तालिका में डेटा सम्मिलित करते समय त्रुटि संदेश 110 SQL सर्वर में एक सामान्य रूप से सामने आई त्रुटि है। पूरी त्रुटि इस तरह दिखती है:
Msg 110, Level 15, State 1, Line 1 There are fewer columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.
ऐसा तब होता है जब आप INSERT
. में कम कॉलम निर्दिष्ट करते हैं VALUES
. के साथ आप जितने मानों को सम्मिलित करने का प्रयास कर रहे हैं, उससे अधिक विवरण खंड।
यह तब होगा जब आप गलती से INSERT
. से एक या अधिक कॉलम छोड़ दें बयान।
यदि आप इसके विपरीत करने का प्रयास करते हैं तो आपको एक समान (लेकिन तकनीकी रूप से भिन्न) त्रुटि मिलेगी - अधिक निर्दिष्ट करें INSERT
. में कॉलम कथन की तुलना में आप सम्मिलित करने का प्रयास करते हैं।
उदाहरण
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।
INSERT INTO Customers (FirstName)
VALUES ('Bob', 'Brown');
परिणाम:
Msg 110, Level 15, State 1, Line 1 There are fewer columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.
इस मामले में, मैं डेटा डालने के लिए एक कॉलम निर्दिष्ट करता हूं (FirstName
), लेकिन फिर मैं डालने के लिए दो मान निर्दिष्ट करता हूं (Bob
और Brown
)।
त्रुटि कैसे ठीक करें
आप यह सुनिश्चित करके इस त्रुटि को ठीक कर सकते हैं कि स्तंभों की संख्या सम्मिलित किए जाने वाले मानों की संख्या से मेल खाती है।
मेरे उदाहरण में, मैं या तो सम्मिलित किए जाने वाले मानों में से एक को हटा सकता हूं, या दूसरे मान को पूरा करने के लिए दूसरा कॉलम जोड़ सकता हूं।
तो मैं यह कर सकता था:
INSERT INTO Customers (FirstName)
VALUES ('Bob');
या यह:
INSERT INTO Customers (FirstName, LastName)
VALUES ('Bob', 'Brown');
यह उल्लेखनीय है कि यदि अंतिम नाम कॉलम में एक NOT NULL
है बाधा, पहला उदाहरण उस बाधा का उल्लंघन करेगा (क्योंकि मैं NULL
सम्मिलित करने का प्रयास कर रहा हूँ अंतिम नाम . में कॉलम जब वास्तव में एक NOT NULL
है उस कॉलम पर प्रतिबंध)।
यदि तालिका में केवल दो स्तंभ हैं, तो मैं यह भी कर सकता हूं:
INSERT INTO Customers
VALUES ('Bob', 'Brown');
हालांकि यदि संभव हो तो कॉलम नामों को स्पष्ट रूप से बताना बेहतर है (जैसा कि पिछले उदाहरण में है)।