Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Obowiązkowy klucz podstawowy dla serwera SQL

Możesz użyć do tego wyzwalaczy DDL i musiałbyś przeanalizować Sql, aby sprawdzić, czy PK jest tworzony. Nie sądzę, że istnieje inna opcja.

Przykład:

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. Jak usunąć rekordy NIE W

  2. Czy wymagane jest wycofanie, jeśli zapytanie zostało zakończone z błędami?

  3. sql jak rzucić zapytanie wybierające

  4. Problem z zapytaniem sql podczas raportowania

  5. Jak wybrać maksymalny wiersz dla każdej grupy w SQL?