Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

क्या आपके पास SQLServer 2k5 में एक लिंक्ड सर्वर तालिका के दृश्य पर एक विदेशी कुंजी हो सकती है?

विदेशी कुंजियों को गैर-स्थानीय वस्तुओं से नहीं जोड़ा जा सकता है - उन्हें स्थानीय तालिकाओं का संदर्भ देना होगा। आपको "उपसर्गों की अधिकतम संख्या" त्रुटि मिलती है क्योंकि आप तालिका को 4-भाग नाम (LinkedServer.Database.Schema.Object) से संदर्भित कर रहे हैं, और एक स्थानीय ऑब्जेक्ट का केवल 3-भाग का नाम होगा।

अन्य समाधान :

  1. स्रोत (दृश्य का स्थान) से डेटा को उसी सर्वर पर दोहराएं जिस तालिका में आप कुंजी जोड़ने का प्रयास कर रहे हैं। स्रोत डेटा कितनी बार बदलता है, इसके आधार पर आप इसे प्रति घंटा, दैनिक या जो भी कर सकते हैं।
  2. अपनी स्थानीय प्रतिलिपि में किसी भी परिवर्तन को पुश करने के लिए स्रोत तालिका पर एक ट्रिगर जोड़ें। यह अनिवार्य रूप से #1 जैसा ही होगा, लेकिन परिवर्तनों की तत्काल जनसंख्या के साथ
  3. अपनी तालिका में एक INSTEAD" ट्रिगर जोड़ें जो लिंक किए गए सर्वर से चयन करके और उस मान की तुलना करके मैन्युअल रूप से विदेशी कुंजी बाधा की जांच करता है जिसे आप INSERT/UPDATE करने का प्रयास कर रहे हैं। यदि यह मेल नहीं खाता है, तो आप परिवर्तन को अस्वीकार कर सकते हैं ।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर अधिकतम पंक्ति आकार बनाम वर्चर (अधिकतम) आकार

  2. SQL सर्वर 2008 में दृश्य का पुनर्निर्माण कैसे करें

  3. SQL सर्वर में sys.objects, sys.system_objects और sys.all_objects के बीच अंतर

  4. अद्यतन विवरण संदर्भ बाधा के साथ विरोध करता है - SQL सर्वर / TSQL ट्यूटोरियल भाग 76

  5. sqlcmd - सभी सेट विकल्प सेटिंग मान कैसे प्रदर्शित करें?