Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.16;
Скачать: CL | DM;

Вниз

Передача параметров в SQL запросе.   Найти похожие ветки 

 
Soft ©   (2002-08-24 15:55) [0]

Произвожу запрос в базу Sybase ASA6.0.3 с передачей параметров

Query1.SQL.Clear;
Query1.SQL.Add("insert into logs(id,hostname) values(:id1,:hostname1);");
Query1.ParamByName("id1").AsInteger:=2;
Query1.ParamByName("hostname1").AsString:="gidota";
Query1.ExecSQL;

При запуске SQL монитора отлавливаю как BDE передает параметры
SQL Prepare: Adaptive Server Anywhere 6.0 - insert into logs(id,hostname) values(?,?);
SQL Data In: Adaptive Server Anywhere 6.0 - Param = 1, Name = , Type = fldINT32, Precision = 0, Scale = 0, Data = 1
SQL Data In: Adaptive Server Anywhere 6.0 - Param = 2, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = gidota
SQL Execute: Adaptive Server Anywhere 6.0 - insert into logs(id,hostname) values(?,?);

И при этом выдается ошибка
SQL Error: Adaptive Server Anywhere 6.0 - [Sybase][ODBC Driver][Adaptive Server Anywhere]Count field incorrect: Not enough values for host variables

Это глюк можно исправить, если при передаче параметров в Name=Имя_параметра, а не пустая строка Name = ,.

Как BDE заставить передавать кроме номера еще и имя параметров?


 
Desdechado ©   (2002-08-24 17:43) [1]

попробуй параметры назвать по-другому, не как поля


 
Soft ©   (2002-08-24 19:46) [2]

А они и названы по другому id и параметр id1. Вопрос не в названии, а в том, что BDE это название не передает, а только номер параметра, из-за этого глюки. Как заставить BDE передавать имя параметров?



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

Текущий архив: 2002.09.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
1-50796
MaximatorVeter
2002-09-03 15:01
2002.09.16
Не могу разобраться как работает метод Assign


14-50916
Мася
2002-08-21 09:11
2002.09.16
Автозагрузка


1-50716
Andre V.
2002-09-04 13:56
2002.09.16
Закрасить наследника BUTTON


14-50926
Sock
2002-08-20 19:35
2002.09.16
?


1-50691
NiConZ
2002-09-05 10:31
2002.09.16
->IDE->Code templates ?