Вниз
Скачать: CL | DM;

Проблема с Insert   Найти похожие ветки 

← →
Georg   (2003-03-21 10:22) [0]

Доброго времени суток! Помогите пжлста разобраться:
добавляю в таблицу запись, одно из строковых полей содержит знак вопроса. После ExecSQL просто зависает - сообщений об ошибке нет. Что делать со знаком вопроса, может его "обрамлять" как-то надо?


← →
Johnmen ©   (2003-03-21 10:32) [1]

Код ?


← →
Georg   (2003-03-21 11:09) [2]

INSERT INTO MARRYDISPO, PRODTITEL
(DKZ, ZEA, ZEE, RES, PRT, PRN, USER_ID, DATE, TIME)
VALUES (809447,1388580,1388670,2140,"Test ?","499870","jurij","21.03.03","08:55 ")


← →
Соловьев ©   (2003-03-21 11:12) [3]

INSERT INTO <table name>
VALUES ( <value>, <value> . . .);
Как видим только одна таблица, а не 2-е....Хотя может BAPAS имеет расширения, тогда может надо указать явно владельца полей.


← →
Georg   (2003-03-21 11:16) [4]

Проблема в том, что без знака вопроса работает без проблем. Пишу в таблицу Prodtitel, по синтаксису надо еще и имя базы MARRAYDISPO указывать.


← →
Johnmen ©   (2003-03-21 11:22) [5]

Откуда и как выполняется запрос ?


← →
Соловьев ©   (2003-03-21 11:26) [6]

VALUES заполняется программно? через параметры?


← →
Georg   (2003-03-21 11:27) [7]

Выполняю с TQuery:

Query1.SQL.Clear;
sql := "INSERT INTO " + ActDB + ", PRODTITEL " +
" (DKZ, ZEA, ZEE, RES, PRT, PRN, USER_ID, DATE, TIME)" +
" VALUES (" +
IntToStr(DKZ) + "," +
ZEA + "," +
ZEE + "," +
RES + "," +
c + Titel + c + "," +
c + ProdNr + c + "," +
c + USER_ID + c + "," +
c + Date + c + "," +
c + Time + c + ")";
Query1.SQL.Add(sql);
try
Query1.ExecSQL;
except
FehlerNachDatei("{01AB1252-7591-11D6-AC79-000000000000}", sql);
end;


← →
Johnmen ©   (2003-03-21 12:00) [8]

На первый взгляд все нормально.
Смущает лишь ... INTO MARRYDISPO, PRODTITEL ...
Да, а какой тип у поля PRT ?


← →
Georg   (2003-03-21 12:04) [9]

CHAR(40)


← →
Johnmen ©   (2003-03-21 12:12) [10]

Смею предположить, что дело не в символе "?", а в чем-то другом...


← →
Соловьев ©   (2003-03-21 12:14) [11]


> Georg (21.03.03 11:09)
> INSERT INTO MARRYDISPO, PRODTITEL
> (DKZ, ZEA, ZEE, RES, PRT, PRN, USER_ID, DATE, TIME)
> VALUES (809447,1388580,1388670,2140,"Test ?","499870","jurij","21.03.03","08:55
> ")

то ты посмотрел состояние SQL перед ExecSQL?


← →
Georg   (2003-03-21 12:19) [12]

Так вот если убрать этот единственный символ - то никаких проблем. С чего все и началось, что юзерша задала в названии только знак вопроса и все зависло нафиг. Хоть бы ошибка какая-нибудь, а то ж ничего. Самое главное, уже пару месяцев тестировали и никто ни разу "?" не применял...


← →
Соловьев ©   (2003-03-21 12:21) [13]

что такое с в коде?


← →
Georg   (2003-03-21 12:23) [14]

Непосредственно перед этим запросом выполняются еще два INSERT"a


← →
Соловьев ©   (2003-03-21 12:25) [15]

а если только "?" ввести без ничего...


← →
Georg   (2003-03-21 12:29) [16]

c const c: Char = #39;

Пробовал уже и просто ?, и в двойных кавычках его, и с текстом и без...


← →
Соловьев ©   (2003-03-21 12:31) [17]

bapas - это что?


← →
Georg   (2003-03-21 12:35) [18]

Это довольно древняя вещь, бежит под Unix. Разработка фирмы Werum.


← →
Соловьев ©   (2003-03-21 12:41) [19]

а как это ты с ней работаешь? через BDE?


← →
Georg   (2003-03-21 12:43) [20]

да


← →
Соловьев ©   (2003-03-21 12:44) [21]

проверь сначала в SQL Exploere свой запрос, там оттестируй может чего накопаешь...


← →
Johnmen ©   (2003-03-21 12:48) [22]

Попробуй поиграть с параметром SQLQRYMODE в настройках алиаса в BDE.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.011 c
6-30505
Dmitry_A
2003-02-14 19:27
2003.04.10
Как по MAC адресу узнать IP адрес?


1-30348
Che
2003-03-31 19:54
2003.04.10
Выбор фаила


14-30537
Tornado
2003-03-24 09:12
2003.04.10
Что за библиотека KERNEL32.DLL ?


14-30609
iNew
2003-03-26 09:13
2003.04.10
Подскажите хороший подбиральщик паролей для zip архивов


9-30206
HellTrooper
2002-11-10 13:30
2003.04.10
2D карта




   Наверх