Запросы, планы, оптимизация запросов, ...
Модераторы: kdv, CyberMax
-
armagedon2007
- Сообщения: 44
- Зарегистрирован: 14 мар 2008, 21:01
Сообщение
armagedon2007 » 03 июл 2008, 15:58
Делаю SQL запрос
Код: Выделить всё
MERGE INTO REG_ENTRY USING
(WITH
D_IN (DOC_ID, DOC_DATE, AGENT_ID, STOCKS_ID, DC1) AS
(
SELECT DOC_IN.ID, DOC_IN.DOC_DATE, DOC_IN.AGENT_ID, DOC_IN.STOCKS_ID, DOC_IN.DC1
FROM DOC_IN
WHERE DOC_IN.ID = :ID
), ^^^
.....
ругается что незнает что такое :ID
Если в начале дописать тукую вещь
то неругается
Это так надо?
Последний раз редактировалось
armagedon2007 03 июл 2008, 16:04, всего редактировалось 1 раз.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 03 июл 2008, 16:00
1. откуда запрос выполняется? :ID это параметр, его передавать надо перед выполнением запроса.
2. типа, впервые слышишь? Оно ж тебе человеческим языком говорит - ты выбираешь столбец DOC_ID из таблицы A или REG_ENTRY?
алиасы таблиц используй.
-
Attid
- Спец
- Сообщения: 377
- Зарегистрирован: 14 ноя 2006, 09:58
Сообщение
Attid » 03 июл 2008, 16:58
сдается мне что бага эксперта, попробуй хвастунову пожаловаться.
-
Kotъ-Begemotъ
- Сообщения: 250
- Зарегистрирован: 25 июл 2007, 21:33
Сообщение
Kotъ-Begemotъ » 09 июл 2008, 01:28
armagedon2007 писал(а):Действительно проблема в IBExpert-е
Да. Пераметризованные запросы, в которых параметр используется во вложенном запросе, так в эксперте себя ведут. Не раз уже внммание обращал, поэтому для теста прибиват значение "гвоздями"
А уже в проге (Delphi + FIB+) подставлял параметры, и всё было нормально.