Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как передить данные в новую таблицу с identity?  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 4182
Есть таблица с полем identity

create table s1
(
id int identity(1,1)
string mvarchar(2000),
hash int
)

Надо перелить данные в новую таблицу, но чтобы id стал bigint identity
типа такого:

select cast(id as bigint) as bigid, string, hash into newtable from s1;
?

или все-таки надо создать таблицу и в нее делать

insert ...
select...
?
11 янв 17, 18:30    [20095167]     Ответить | Цитировать Сообщить модератору
 Re: Как передить данные в новую таблицу с identity?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8821
Ролг Хупин,

insert сохранит нумерацию, если предварительно set identity_insert tbl on .
11 янв 17, 18:44    [20095212]     Ответить | Цитировать Сообщить модератору
 Re: Как передить данные в новую таблицу с identity?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8821
Ролг Хупин,

лучше воспользоваться мастером экспорта и подкорректировать размерность поля. Будет BULK операция.
11 янв 17, 18:46    [20095220]     Ответить | Цитировать Сообщить модератору
 Re: Как передить данные в новую таблицу с identity?  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 4182
Владислав Колосов
Ролг Хупин,

лучше воспользоваться мастером экспорта и подкорректировать размерность поля. Будет BULK операция.


мастером не получится, мне надо это делать скриптами из приложения.
11 янв 17, 18:48    [20095228]     Ответить | Цитировать Сообщить модератору
 Re: Как передить данные в новую таблицу с identity?  [new]
invm
Member

Откуда: Москва
Сообщений: 9836
Ролг Хупин
или все-таки надо создать таблицу и в нее делать

insert ...
select...
Да.
11 янв 17, 19:12    [20095293]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить