как проверить и изменить ограничения - PullRequest
0 голосов
/ 28 августа 2010

Привет, может кто-нибудь сказать мне, как проверить, существует ли первичный ключ в таблице или нет, и добавить первичный ключ, если не exixts в SQL Server Compact (.sdf) ..

Я использую это,

  IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_TYPE = 'PRIMARY KEY') 
   BEGIN 
       alter table [tablename] add constraint [name] PRIMARY KEY (columnname)
   END

когда я выполняю это в SQL Server Compact я получаю эту ошибку ..

Большая ошибка 0x80040E14, Малая ошибка 25501

ЕСЛИ НЕ СУЩЕСТВУЕТ (ВЫБЕРИТЕ * ИЗ INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_TYPE = 'PRIMARY KEY') BEGIN измените таблицу [tablename] добавьте ограничение [name] PRIMARY KEY (имя столбца) END Произошла ошибка при разборе запроса. [Номер строки токена = 1, смещение строки токена = 1, ошибка токена = IF]

спасибо ..

1 Ответ

0 голосов
/ 04 июня 2015
 IF NOT EXISTS(SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'PRIMARY KEY') AND type in (N'U') )
   BEGIN 
       alter table [tablename] add constraint [PRIMARY KEY] PRIMARY KEY CLUSTERED (columnname)
   END

Пожалуйста, используйте приведенный выше запрос и дайте мне знать, если он работает. спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...