चूंकि यह व्यावहारिक एरिक के जवाब यह है कि यह आप के लिए काम नहीं कर रहा में अपनी टिप्पणी के जवाब में, एक टिप्पणी में कोड डाल करने के लिए नहीं है ...
मैं सिर्फ एक एसक्यूएल 2005 बॉक्स पर निम्नलिखित भाग गया (खेद डिफ़ॉल्ट सेटिंग वाला कोई 2000 काम) है और यह त्रुटि के बिना काम किया:
CREATE TABLE dbo.Test_Identity_Insert
(
id INT IDENTITY NOT NULL,
my_string VARCHAR(20) NOT NULL,
CONSTRAINT PK_Test_Identity_Insert PRIMARY KEY CLUSTERED (id)
)
GO
INSERT INTO dbo.Test_Identity_Insert VALUES ('test')
GO
SELECT * FROM dbo.Test_Identity_Insert
GO
आप शायद ID मान अपने मूल्यों की सूची में से अधिक भेज रहे हैं? मुझे नहीं लगता कि अगर आप वास्तव में इसके लिए मूल्य पास करते हैं तो आप कॉलम को अनदेखा कर सकते हैं। उदाहरण के लिए, यदि आपकी तालिका में 6 कॉलम हैं और आप पहचान कॉलम को अनदेखा करना चाहते हैं तो आप केवल 5 मान पास कर सकते हैं।
स्रोत
2009-06-01 15:42:00
क्यों नहीं करते आप एक स्तंभ नाम सूची का उपयोग करना चाहते है? –
@ मिच, यह जटिल है, लेकिन मेरे पास एक प्रोग्राम है जो एसक्यूएल को फ्लाई पर उत्पन्न करता है और मेरे मूल डिजाइन में मैं किसी भी पहचान कॉलम से निपट नहीं रहा था इसलिए मैंने कॉलम नामों को छोड़ दिया। मुझे एक त्वरित अपडेट करने की ज़रूरत है और मैं कॉलम नामों का उपयोग करने से बच सकता हूं जिससे यह इतना आसान हो जाएगा। –
@ nemo-- पहले "त्वरित पैच" स्थिति में होने के बाद, मैं आपको इस पर एक पास दूंगा। लेकिन कृपया, सड़क के नीचे अपने स्वयं के लिए, अगले पूर्ण अपडेट में कॉलम नाम निर्दिष्ट करने की योजना बनाएं .... – RolandTumble