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

Откуда:
Сообщений: 586
Есть 2 таблички, из одной при помощи bcp я выгрузил данные в другую.
Так как в первой данные периодически пополняются сделал LEFT JOIN между ними с условием table2.id is NULL
Получил список записей, которые отсутствуют во второй таблице.
Проверил, действительно данного id во второй табличке нет. Делаю insert into

insert into [Terms_sc].[dbo].[Terms] (id,[Value]) select id,[Value] from [Terms].[dbo].[Terms] where id=669333857


автор
Cannot insert explicit value for identity column in table 'Terms' when IDENTITY_INSERT is set to OFF.


Ну понятно, делаю:

SET IDENTITY_INSERT [Terms_sc].[dbo].[Terms] ON
go
insert into [Terms_sc].[dbo].[Terms] (id,[Value]) select id,[Value] from [Terms].[dbo].[Terms] where id=669333857


И получаю вот такой ответ сервера:
автор
Duplicate key was ignored.

(0 rows affected)


В табличке присутствует уникальный индекс на поле Value. Но вставляемое поле в таблице так же отсутствует.
14 окт 19, 14:39    [21993771]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
aleks222
Member

Откуда:
Сообщений: 855
Сервер из вредности вас посылает.
Это же очевидно.

ЗЫ. Если неочевидно - выполните запрос из SSMS.
14 окт 19, 14:51    [21993783]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
teCa
Member

Откуда:
Сообщений: 586
aleks222
Сервер из вредности вас посылает.
Это же очевидно.

ЗЫ. Если неочевидно - выполните запрос из SSMS.


Из SSMS insert into делаю
14 окт 19, 15:06    [21993802]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7401
teCa,

запись не вставляется потому, что запись с таким же значение ключа такая уже есть или Вы добавляете две одинаковые строки. Более того, сообщение может относиться к другой таблице.
14 окт 19, 16:10    [21993876]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
teCa
Member

Откуда:
Сообщений: 586
Владислав Колосов
teCa,

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


select id,[Value] from [Terms_sc].[dbo].[Terms] where id=669333857

автор
(0 rows affected)


Нет в таблице такого значения
14 окт 19, 16:38    [21993915]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
msLex
Member

Откуда:
Сообщений: 7730
select *
from [Terms_sc].[dbo].[Terms] 
where value in (select [Value] from [Terms].[dbo].[Terms] where id=669333857)
14 окт 19, 16:40    [21993917]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
Konst_One
Member

Откуда:
Сообщений: 11512
select *
from [Terms_sc].[dbo].[Terms] 
where value IS NULL


что покажет?
14 окт 19, 16:50    [21993933]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
teCa,
в табличке уже есть строка с таким ПК
и плюс вот это PRIMARY KEY WITH (IGNORE_DUP_KEY = ON)
14 окт 19, 16:59    [21993938]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
teCa
Member

Откуда:
Сообщений: 586
Konst_One
select *
from [Terms_sc].[dbo].[Terms] 
where value IS NULL


что покажет?


(0 rows affected)
14 окт 19, 17:04    [21993943]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
Konst_One
Member

Откуда:
Сообщений: 11512
осталось только скрипты этих таблиц ваших посмотреть наконец то, может что и прояснится
14 окт 19, 17:09    [21993948]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
teCa
В табличке присутствует уникальный индекс на поле Value. Но вставляемое поле в таблице так же отсутствует.


Точно отсутствует? А Collation у таблиц совпадает? Искали с учетом collation?
14 окт 19, 17:10    [21993950]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите, почему не вставляется запись.  [new]
teCa
Member

Откуда:
Сообщений: 586
Minamoto
teCa
В табличке присутствует уникальный индекс на поле Value. Но вставляемое поле в таблице так же отсутствует.


Точно отсутствует? А Collation у таблиц совпадает? Искали с учетом collation?


Понял теперь в чем дело, новая таблица пересоздана с новым колэйшеном.
14 окт 19, 17:17    [21993961]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить