Как использовать переменную в качестве начального числа для столбца идентификаторов при создании таблиц - PullRequest
0 голосов
/ 12 марта 2012

Я хочу поместить набор семян в столбец идентификаторов таблицы на основе некоторой переменной.

Например,что-то в этом роде.

DECLARE @seed INT
SELECT @seed = MAX(id) 
  FROM tblSomeTable

Теперь, используя @seed, я хочу заполнить свой новый стол.

Например.что-то вроде этого:

DECLARE @tempTable TABLE (
  ID INT IDENTITY(@seed,1) PRIMARY KEY, DESC NVARCHAR(50)
)

Это на самом деле выдает ошибку с неверным синтаксисом.Есть ли способ добиться этого?

1 Ответ

1 голос
/ 12 марта 2012

Используйте полностью динамический SQL и вставьте начальное значение в строку, содержащую оператор CREATE TABLE (или оператор DECLARE ... TABLE).Большинство операторов DDL не допускают использования в них переменных.

...