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

Sql सर्वर के लिए अनिवार्य प्राथमिक कुंजी

आप इसके लिए डीडीएल ट्रिगर्स का उपयोग कर सकते हैं, और आपको यह जांचने के लिए एसक्यूएल को पार्स करना होगा कि क्या पीके बनाया जा रहा है। मुझे नहीं लगता कि कोई दूसरा विकल्प है।

उदाहरण:

create trigger trgTable
on database
for create_table, alter_table
as
set nocount on

declare @data xml, @obj varchar(255), @type varchar(255), @cmd varchar(max)
set @data = EVENTDATA()

select 
    @obj    = @data.value('(/EVENT_INSTANCE/ObjectName)[1]', 'varchar(256)'), 
    @type   = @data.value('(/EVENT_INSTANCE/ObjectType)[1]', 'varchar(25)'), 
    @cmd    = @data.value('(/EVENT_INSTANCE/TSQLCommand)[1]', 'varchar(max)')

-- now do your logic here



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एसएसआईएस फ्लैट फ़ाइल स्रोत में खराब पंक्ति को कैसे छोड़ें?

  2. लॉगऑन ट्रिगर को छोड़ने का प्रयास करते समय "ट्रिगर नहीं छोड़ सकता" त्रुटि? इसे इस्तेमाल करे।

  3. SQL सर्वर के प्रदर्शन को आसान बनाएं

  4. पहचान कॉलम डालने के लिए मैं इकाई ढांचे को कैसे मजबूर कर सकता हूं?

  5. SQL सर्वर एक्सप्रेस डेटाबेस को दूसरे कंप्यूटर पर कॉपी करें