Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
Добрый день всем!
Проблемка на сегодня следующая:
есть простой запрос:

update dbo.GL
set GL.ves = #n1.ves
where GL.sku = #n1.sku

где GL таблица в которой есть столбец sku и ves - столбец который заполнен как null ну и еще куча столбцов.
Есть временная таблица #n1 с полями ves,sku
Мне нужно из временной таблицы #n1 заполнить значениями поле вес в таблице GL где значения sku совпадают.
На мой запрос выдает ошибку
Сообщение 4104, уровень 16, состояние 1, строка 13
Не удалось привязать составной идентификатор "#n1.sku".
Все казалось бы проще некуда, но увы не работает(((( Помогите плиз
7 авг 13, 15:29    [14676364]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37254
inner join
7 авг 13, 15:30    [14676378]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
поподробней, если можно)
7 авг 13, 15:31    [14676390]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Glory
Member

Откуда:
Сообщений: 104751
mpkfa
поподробней, если можно)

Множество таблиц в одном запросе должны быть соединеня через JOIN
Вы синтасис команды update изучали вообще ?
7 авг 13, 15:33    [14676403]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2414
mpkfa,

update A
set ..
from A inner join B on A.id = B.id
7 авг 13, 15:33    [14676404]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гость333
Member

Откуда:
Сообщений: 3683
update gl
set ves = n1.ves
from dbo.GL gl
     inner join #n1 n1 on gl.sku = n1.sku
7 авг 13, 15:34    [14676412]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
Glory
mpkfa
поподробней, если можно)

Множество таблиц в одном запросе должны быть соединеня через JOIN
Вы синтасис команды update изучали вообще ?

Я в процессе
7 авг 13, 15:35    [14676422]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
Гость333,StarikNavy Спасибо огромное!
7 авг 13, 15:35    [14676431]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
iap
Member

Откуда: Москва
Сообщений: 47107
Гавриленко Сергей Алексеевич
inner join
Можно и без:
update dbo.GL
set GL.ves = #n1.ves
from #n1
where GL.sku = #n1.sku
7 авг 13, 15:36    [14676438]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37254
iap
Гавриленко Сергей Алексеевич
inner join
Можно и без:
update dbo.GL
set GL.ves = #n1.ves
from #n1
where GL.sku = #n1.sku
Те, кто соединяют таблицы "через запятую", должны гореть в аду. :)
7 авг 13, 15:43    [14676488]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
iap
Member

Откуда: Москва
Сообщений: 47107
Гавриленко Сергей Алексеевич
iap
пропущено...
Можно и без:
update dbo.GL
set GL.ves = #n1.ves
from #n1
where GL.sku = #n1.sku

Те, кто соединяют таблицы "через запятую", должны гореть в аду. :)
А где там запятая?
7 авг 13, 15:46    [14676509]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37254
iap
Гавриленко Сергей Алексеевич
пропущено...
Те, кто соединяют таблицы "через запятую", должны гореть в аду. :)
А где там запятая?
Update съел, он может.
7 авг 13, 15:49    [14676532]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
Во, а теперь ругается Сообщение 8115, уровень 16, состояние 8, строка 13
Ошибка арифметического переполнения при преобразовании numeric к типу данных numeric.
Выполнение данной инструкции было прервано.
А типа numeric у меня там вообще нет. Есть decimal(3,3)...
7 авг 13, 15:50    [14676540]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37254
Тип полей в таблице и времянке покажите.
З.Ы. numeric = decimal.
7 авг 13, 15:51    [14676548]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
во времянке decimal(8,6), а в GL decimal(3,3). но значения не выходят за 3,3. Поправил все на 8,6 - проверяю
7 авг 13, 15:55    [14676584]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
я почему то думал что знаки которые не влазят он просто отбросит
7 авг 13, 15:57    [14676599]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Glory
Member

Откуда:
Сообщений: 104751
mpkfa
я почему то думал что знаки которые не влазят он просто отбросит

Т.е. из 10.123456 сделает 0.123 что ли ?
7 авг 13, 15:59    [14676626]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37254
По идее, все значения из (3,3) должно влезать в (8,6).
7 авг 13, 16:00    [14676631]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37254
А вот наоборот - нет.
7 авг 13, 16:01    [14676634]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
iap
Member

Откуда: Москва
Сообщений: 47107
Гавриленко Сергей Алексеевич
По идее, все значения из (3,3) должно влезать в (8,6).
Он же наоборот апдейтит маленький DEC() большим
7 авг 13, 16:01    [14676643]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
Glory
mpkfa
я почему то думал что знаки которые не влазят он просто отбросит

Т.е. из 10.123456 сделает 0.123 что ли ?

Я думал что именно так и есть. Просто за короткое время прочитав очень много все в голове перемешалось) Наверное это было про что то другое) запрос идет уже 10 мин - не ругается(там таблица на 14 млн строк)
7 авг 13, 16:04    [14676677]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Glory
Member

Откуда:
Сообщений: 104751
mpkfa
Glory
пропущено...

Т.е. из 10.123456 сделает 0.123 что ли ?

Я думал что именно так и есть.

К счастью сервера программируют люди, которые знают математику.
7 авг 13, 16:07    [14676698]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
mpkfa
Member

Откуда:
Сообщений: 81
iap
update dbo.GL
set GL.ves = #n1.ves
==>from #n1
where GL.sku = #n1.sku

[/src]

iap был прав - все без Join работает
7 авг 13, 16:09    [14676704]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
iap
Member

Откуда: Москва
Сообщений: 47107
mpkfa
iap
update dbo.GL
set GL.ves = #n1.ves
==>from #n1
where GL.sku = #n1.sku

[/src]

iap был прав - все без Join работает
Но если таблиц было бы больше, без JOIN не обошлось бы
7 авг 13, 16:10    [14676716]     Ответить | Цитировать Сообщить модератору
 Re: Не удалось привязать составной идентификатор  [new]
Glory
Member

Откуда:
Сообщений: 104751
iap
mpkfa
пропущено...

iap был прав - все без Join работает
Но если таблиц было бы больше, без JOIN не обошлось бы

Если бы понадобился outer join, то его бы пришлось писать и для двуз таблиц
7 авг 13, 16:12    [14676730]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить