Укажите имя PK при создании таблицы
-
08-07-2019 - |
Вопрос
В MSSQL есть ли способ указать имя для ограничения PK, чтобы MSSQL не предоставлял случайно сгенерированное имя PK следующим образом:
PK__Addresse__3214EC074E88ABD4
Единственный способ, который я вижу сейчас, чтобы сделать это, - это сначала создать таблицу, а затем выполнить команду ALTER для переименования PK.Было бы проще, если бы я мог сделать это одним выстрелом.
Решение
ДА.Вот синтаксис, который генерирует SSMS:
CREATE TABLE [Address] (
[ID] [int] IDENTITY(1,1) NOT NULL,
<< columns here >>,
CONSTRAINT [PK_Address] PRIMARY KEY CLUSTERED ([ID] ASC)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
Другие советы
Во время создания таблицы
CREATE TABLE MyTable
(
Id INT NOT NULL
CONSTRAINT PK_MyTable PRIMARY KEY (Id)
)
Если вам нужно изменить таблицу и добавить основное ограничение
ALTER TABLE MyTable
ADD CONSTRAINT PK_MyTable PRIMARY KEY (Id)
Надеюсь, это поможет
Не связан с StackOverflow