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

SQL सर्वर में एक बाधा का नाम कैसे खोजें

समस्या:

आप SQL सर्वर में किसी तालिका में बाधाओं के नाम खोजना चाहते हैं।

उदाहरण:

हम तालिका में बाधाओं के नाम प्रदर्शित करना चाहते हैं student

समाधान:

SELECT TABLE_NAME,
       CONSTRAINT_TYPE,CONSTRAINT_NAME
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE TABLE_NAME=’student’;

ये रहा परिणाम:

TABLE_NAME CONSTRAINT_TYPE CONSTRAINT_NAME
विद्यार्थी प्राथमिक कुंजी PK__student__3213E83F357C7D1D
विद्यार्थी अद्वितीय UQ__student__24E2EDD2AC2A7D87
विद्यार्थी जांच करें CK__student__age__4E88ABD4
विद्यार्थी विदेशी कुंजी FK__student__country__4F7CD00D

चर्चा:

दृश्य का उपयोग करें table_constraints information_schema स्कीमा। कॉलम table_name आपको उस तालिका का नाम देता है जिसमें बाधा परिभाषित की गई है, और कॉलम constraint_name बाधा का नाम शामिल है। कॉलम constraint_type बाधा के प्रकार को इंगित करता है:PRIMARY KEY प्राथमिक कुंजी प्रकार के लिए, FOREIGN KEY विदेशी कुंजी प्रकार के लिए, UNIQUE अद्वितीय मानों के लिए, और CHECK बाधा जांच के लिए।

उदाहरण के लिए, student तालिका में बाधा नाम है PK_student_3213E83F357C7D1D . constraint_type कॉलम आपको प्रत्येक बाधा के प्रकार के बारे में जानकारी देता है; प्राथमिक कुंजी के लिए, यह PRIMARY KEY है . table_name इस दृश्य में कॉलम इंगित करता है कि किस तालिका में यह बाधा है।

हालांकि, अगर आप DEFAULT . का चयन करना चाहते हैं डेटाबेस से बाधा, नीचे इस क्वेरी का उपयोग करें।

SELECT c.name, c.definition
FROM sys.default_constraints c
JOIN sys.objects o ON o.object_id = c.parent_object_id
WHERE o.name ='student';

ये रहा परिणाम:

नाम परिभाषा
DF__student__name__4D94879B ("अज्ञात")

DEFAULT . का नाम बाधा स्तंभ नाम में संग्रहीत है, लेकिन मान स्तंभ में है definition . विचारों में शामिल होना sys.default_constraint s और sys.objects हमें दी गई तालिका के लिए केवल डेटा का चयन करने की अनुमति देता है (हमारे उदाहरण में, तालिका student ) WHERE क्लॉज का उपयोग करके। बाधा नाम में तालिका का नाम होता है (student ) और कॉलम का नाम (name )।


  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 सर्वर में सभी सर्वर ट्रिगर की सूची लौटाएं

  3. SQL सर्वर में XML दस्तावेज़ में नोड क्रम ढूँढना

  4. SQL डेटाबेस को आसानी से पुनर्स्थापित करें - चरण दर चरण मार्गदर्शिका

  5. मैं SQL सर्वर के साथ INNER JOIN का उपयोग करके कैसे हटा सकता हूं?