Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Sql запрос [D7, IB6.x]


Страницы:   1 2

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)


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо