![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Sql запрос [D7, IB6.x]
DelphiNew © (2003-09-02 09:50:00)
Существует вот такой запрос
IBQInsNakl.SQL.Clear;
IBQInsNakl.SQL.Add("insert into view_1500524 (NAMECODE, GROUPCODE, DocNumb)");
IBQInsNakl.SQL.Add("values (:NAMECODE, 0, " +Pref+ "||gen_id (NAKLTARA,1)");
FrmFirst.IBQInsNakl.ExecSQL;
Pref - переменная стрингового типа
Выдаётся ошибка Unexpexted end of coomand
Что неправильно?
DelphiNew (2003-09-02 14:50:00) [1]
Всё получилось!!!! спасибо за терпение!!!
DenK_vrtz (2003-09-02 14:33:00) [2]
"Я все понял. Это не правильные пчелы, и они готовят неправильный мед" (с)
А параметр = null потому, что FrmFirst.IBQInsNakl не знает, что у него есть такой параметр. См. свой код!
Danilka (2003-09-02 14:33:00) [3]
DelphiNew © (02.09.03 14:26)
после того, как ты сделал:
IBQInsNakl.SQL.Clear;
твои параметры умерли.
после того как ты сделал:
IBQInsNakl.SQL.Add(" values (:NAMECODE, 0,"+chr(39)+Pref+chr(39)+"||gen_id (NAKLTARA,1))");
у тебя авт. создался пустой параметр с именем NAMECODE
поставь строчку:
FrmFirst.IBQInsNakl.ParamByName("NAMECODE").AsInteger:=nc;
перед
FrmFirst.IBQInsNakl.ExecSQL;
DelphiNew (2003-09-02 14:26:00) [4]
Правда, параметр Namecode пуст но почему не происходит присвоения. В строке
FrmFirst.IBQInsNakl.ParamByName("NAMECODE").AsInteger:=nc;
переменная ncсодержит не нулевое значение, но это значение не присваевается параметру NAMECODE почему???
Zacho (2003-09-02 14:20:00) [5]
Если получаешь ошибку validation error for column NAMECODE, value "*** null ***" - значит, в параметре :NAMECODE у тебя оказался NULL. Проверь.
DelphiNew (2003-09-02 14:17:00) [6]
Вот полностью код процедуры значение параметру NAMECODE у меня присвоенно
FrmFirst.IBQInsNakl.Close;
FrmFirst.IBSNameCode.ExecProc;
nc:=FrmFirst.IBSNameCode.Params[0].AsInteger;
FrmFirst.IBQInsNakl.ParamByName("NAMECODE").AsInteger:=nc;
FrmFirst.IBQInsNakl.ExecSQL;
IBQInsNakl.SQL.Clear;
IBQInsNakl.SQL.Add("insert into view_1500524 (NAMECODE, GROUPCODE, DocNumb)");
IBQInsNakl.SQL.Add(" values (:NAMECODE, 0,"+chr(39)+Pref+chr(39)+"||gen_id (NAKLTARA,1))");
FrmFirst.IBQInsNakl.ExecSQL;
DenK_vrtz (2003-09-02 13:13:00) [7]
Да! Скажи мне имя параметра, и я скажу какая ошибка у тебя вылезет! :-)
Danilka (2003-09-02 13:00:00) [8]
Zacho © (02.09.03 12:51)
краткость - сестра таланта :))
Danilka (2003-09-02 12:56:00) [9]
тебе для Pref дали 3 работающих кода:
HSolo © (02.09.03 10:23)
DenK_vrtz © (02.09.03 11:08)
Sandman25 © (02.09.03 11:05)
Все три варианта дают одинаковый результат, есть и четвертый вариант. Тебе осталось выбрать любой по вкусу и присвоить что-то в NAMECODE.
:))
Zacho (2003-09-02 12:51:00) [10]
> DelphiNew © (02.09.03 12:48) [23]
Дык, :NAMECODE - у тебя параметр, перед выполнением запроса параметрам вообще-то надо присвоить значения :-)
Danilka (2003-09-02 12:51:00) [11]
DelphiNew © (02.09.03 12:48)
:)))
скажи, плиз, как ты умудрился привязать эту ошибку к кавычкам? там, вроде, NAMECODE упоминается?
DelphiNew (2003-09-02 12:48:00) [12]
2DenK_vrtz
выдаётся ошибка validation error for column NAMECODE, value "*** null ***"
DelphiNew (2003-09-02 12:45:00) [13]
2gsvserg
Неработает выдаёт ошибку Missing Simikolon
Zacho (2003-09-02 12:42:00) [14]
Ничего не понял. Что такое Pref ? Переменная типа string ? Тогда см. Sandman25 © (02.09.03 11:05) [15]
DelphiNew (2003-09-02 12:39:00) [15]
2Sandman25
Что это даст?
Sergey13 (2003-09-02 11:14:00) [16]
>Ну дык как ты предполагаешь складывать число и строку?
Поторопился. В запросе вроде "складывается". 8-) Проверял на Оракле, ИБ под рукой нет.
Sergey13 (2003-09-02 11:10:00) [17]
2DelphiNew © (02.09.03 10:58) [13]
>Таблицы называю не я.
Проехали. Я усомнился, ты развеял мои сомнения.
>Например в настройках задали префикс НПК
и вконечном результате номер накладной должен выглядеть так:НПК123
Ну дык как ты предполагаешь складывать число и строку?
DenK_vrtz (2003-09-02 11:08:00) [18]
IBQInsNakl.SQL.Add("values (:NAMECODE, 0, "+chr(39)+Pref+chr(39)+"||gen_id (NAKLTARA,1))");
gsvserg (2003-09-02 11:08:00) [19]
IBQInsNakl.SQL.Add("values (:NAMECODE, 0, "" +Pref+ ""||gen_id (NAKLTARA,1))"
Sandman25 (2003-09-02 11:05:00) [20]
Pref замените на AnsiQuotedStr(Pref)