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

Откуда:
Сообщений: 573
Как правильно добавить столбец к существующей таблице во время её заполнения
когда делаю так, то ругается
TRUNCATE TABLE Позиции
INSERT INTO Позиции
SELECT
ID [ИД ],
' ' [Месяц]
from table1


Значение столбца идентификаторов в таблице "Позиции" может указываться явно только при использовании списка столбцов и когда IDENTITY_INSERT установлен в ON.
??
16 ноя 11, 12:47    [11604907]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
Konst_One
Member

Откуда:
Сообщений: 11621
а почему списка полей не указываете ?
16 ноя 11, 12:52    [11604984]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
baracs
Member

Откуда: Москва
Сообщений: 7217
МИхаил__________________,

Вы бы, структуру таблицы показали, для приличия...
16 ноя 11, 12:56    [11605023]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
МИхаил__________________
Member

Откуда:
Сообщений: 573
Konst_One
а почему списка полей не указываете ?

все поля тащить в новую таблицу нельзя
16 ноя 11, 12:58    [11605048]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
Konst_One
Member

Откуда:
Сообщений: 11621
я про это вам говорю:

INSERT INTO Позиции (...)
16 ноя 11, 13:00    [11605065]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
Александр Спелицин
Member

Откуда: Из ближайшего подмосковья.
Сообщений: 2517
МИхаил__________________
Как правильно добавить столбец к существующей таблице во время её заполнения?
...

Сначала создать новый столбец (руками, скриптом, ...) 1 раз, затем добавлять данные в указанные/требуемые столбцы.
16 ноя 11, 13:03    [11605106]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
komrad
Member

Откуда:
Сообщений: 5735
МИхаил__________________
Konst_One
а почему списка полей не указываете ?

все поля тащить в новую таблицу нельзя


кол-во и тип полей в таблице и в селекте должно совпадать
16 ноя 11, 13:04    [11605121]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
komrad
МИхаил__________________
пропущено...

все поля тащить в новую таблицу нельзя


кол-во и тип полей в таблице и в селекте должно совпадать
Что за ерунда?
16 ноя 11, 13:09    [11605203]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
komrad
Member

Откуда:
Сообщений: 5735
iap
Что за ерунда?

да, выглядит странно, согласен ;) сказывается недосып сегодня у меня

имел ввиду следующее - если автор пытается селектом дополнительного значения создать новую колонку в существующей таблице, то у него ничего не выйдет

пример (добавление столбца z в таблицу tbl1) , который неправильный:

create table tbl1 (i int, q varchar(20))
insert into tbl1 
select 1,'hello','darling' [z]


PS вышенаписанное отражает то, как лично я понял проблему автора
16 ноя 11, 13:22    [11605392]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22550
МИхаил__________________
Значение столбца идентификаторов в таблице "Позиции" может указываться явно только при использовании списка столбцов и когда IDENTITY_INSERT установлен в ON.
??
Что Вы не поняли в этом сообщении об ошибке?
16 ноя 11, 14:04    [11605888]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
komrad, а так? ;)
BEGIN TRAN
CREATE TABLE tbl1 ( i INT, q VARCHAR(20) )
INSERT  INTO tbl1
        SELECT  1
              , 'hello'

SELECT * FROM tbl1

SELECT *, 'darling' [z] INTO tbl2 FROM tbl1

SELECT * FROM tbl2
ROLLBACK
16 ноя 11, 14:45    [11606386]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
МИхаил__________________
Member

Откуда:
Сообщений: 573
не пойму как правильно написать?
INSERT INTO Tern_MTR_F_Спецификации_Позиции
[ИД Позиция СП],
[ИД СП],
[Цена],
[Дата начала поставки],
[Дата окончания поставки],
Product1CNameID,
[Месяц начала поставки],
[Год начала поставки],
[Месяц окончания поставки],
[Год окончания поставки])
VALUES (select [ИД Позиция СП],
[ИД СП],
[Цена],
[Дата начала поставки],
[Дата окончания поставки],
Product1CNameID,'','','',''
FROM [DWH_CG].[dbo].[CG_temp2] )
16 ноя 11, 14:52    [11606454]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22550
МИхаил__________________
не пойму как правильно написать?
Рекомендую не выдумывать свой синтаксис,
а написать запрос согласно документации
16 ноя 11, 14:57    [11606490]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно добавить столбец к существующей таблице во время её заполнения  [new]
komrad
Member

Откуда:
Сообщений: 5735
kDnZP
komrad, а так? ;)

так то оно так, но у автора то скрипт другой - insert into ... select ... VS select ... into ... from
)
16 ноя 11, 15:57    [11607237]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить