एक पर एक विदेशी कुंजी बाधा जोड़ने की कोशिश करते समयSQL Server 2000 में मौजूदा तालिका, मुझे एक त्रुटि संदेश मिलता है जिसमें लेनदेन लॉग भर गया है। एक विदेशी कुंजी बाधा उत्पन्न होने पर लेनदेन लॉग में डेटा क्यों जोड़ा जा रहा है और इन कारणों में से प्रत्येक पर मैं कौन सा उपाय लागू कर सकता हूं? इसके अलावा, यदि कई कारण मौजूद हैं, तो मैं निदान कैसे कर सकता हूं कि इनमें से कौन से कारण मेरे लिए प्रासंगिक हैं?
त्रुटि उत्पन्न करने वाली स्क्रिप्ट एक सरल है जो इस पैटर्न का पालन करती है:
ALTER TABLE [dbo].[tableName] ADD
CONSTRAINT [key_name] FOREIGN KEY
(
[columnId]
) REFERENCES [dbo].[otherTableName] (
columnId
)
GO
उत्तर:
उत्तर № 1 के लिए 1यह पता चला है कि लॉग पिछले कथन से भरा जा रहा था - एक जो एक बड़ी तालिका पर कॉलम को संशोधित करता है। विदेशी कुंजी बाधा जोड़ना सिर्फ ऊंट था जो ऊंट की पीठ तोड़ दिया था।