Форум: "Базы";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];
ВнизБеда с INSERT Найти похожие ветки
← →
Роман Фадеев (2002-08-13 12:17) [0]Здравствуйте
При использовании SQL-команды INSERT (PARADOX,Delphi 5.0) cтолкнулся со следующей проблемой
Пусть имеем таблицу DstTbl с полем IntFld типа LONG
Тогда запрос
INSERT INTO DstTbl (X, IntFld)
SELECT DISTINCT X, 1 AS IntFld FROM SrcTbl
По идее должен добавить одну запись c указанным полем X и со значением поля IntFld, равным 1, но вместо этого имеем ошибку относительно IntFld
"Type mismatch in expression."
Самое интересное: эта конструкция работает практически для полей любого типа, КРОМЕ LONG!!!
т.е., если наше поле IntFld, к примеру, типа MONEY, все работает на Ура.
Кто знает, как решить эту проблему???
P.S. Приведенное выражение сильно упрощено, дабы не усложнять вам жизнь. Варианты с Values не предлагать - мне нужно именно Select
← →
Johnmen (2002-08-13 12:27) [1]А зачем вообще здесь написано AS IntFld ???
← →
Роман Фадеев (2002-08-13 12:39) [2]To Johnmen ©:
>>А зачем вообще здесь написано AS IntFld ???
Можете выкинуть, если не нравится, но проблема-то остается
← →
3JIA9I CyKA (2002-08-13 12:41) [3]Сделай ему CAST по всей морде
← →
Роман Фадеев (2002-08-13 12:54) [4]То 3JIA9I CyKA © (13.08.02 12:41)
>>Сделай ему CAST по всей морде
КАК??? Поподробнее, если можно
← →
3JIA9I CyKA (2002-08-13 12:59) [5]
insert into DstTbl (X, IntFld) select distinct
X,
cast(1 AS integer)
from SrcTbl
Пахает так?
← →
Роман Фадеев (2002-08-13 13:00) [6]To: 3JIA9I CyKA © (13.08.02 12:59)
...
>>Пахает так?
Да, thanks!
← →
3JIA9I CyKA (2002-08-13 13:03) [7]8)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.011 c