|
|
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
Проблема заключается в следующем... Необходимо добавлять или модифицировать ХП удалённой БД из приложения Delphi (через ADO)... Реализовать это через следующий скрипт не получается... Query1.Close; Query1.ParamCheck:=false; Query1.SQL.LoadFromFile(FileName); //путь к файлу, где находится скрипт ХП Query1.ExecSQL; Хотелось бы отметить, что работаю с FB 1.0 ..., что данный скрипт ХП выполняется без ошибок в IB Expert`e... При выполнении приложения выдаётся системное сообщение: Prepare: SQLCODE=-104: Dynamic SQL Error SQL Error code=-104 Token unknown - line 11, char 53 ? IBCODE=isc_dsql_error Проще говоря ошибка в скрипте на строчке 11... for SELECT Actnames.Id_actname from Actnames INTO :id_ac do begin полагаю, что это из-за переменной, которая объявлена в теле процедуры... и я полагаю, что эту переменную Delphi интерпретирует как параметр запроса... тогда вопрос, как это обойти... Помогите! Очень горит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 11:55 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
Странно. Ведь у тебя ж стоит Query1.ParamCheck:=false; Приведи весь текст ХР. Посмотрим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 11:59 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
/*скрипт процедуры*/ CREATE PROCEDURE UPDATEACTOINSCOMBOBOXES RETURNS ( ID_FI INTEGER, FADDI VARCHAR(20) CHARACTER SET NONE, I INTEGER) AS DECLARE VARIABLE ID_AC INTEGER; DECLARE VARIABLE FCAP VARCHAR(30) CHARACTER SET NONE; DECLARE VARIABLE FIELDADDIT VARCHAR(20) CHARACTER SET NONE; begin for SELECT Actnames.Id_actname from Actnames INTO :id_ac do begin i=1; fieldaddit='CA'||id_ac; for SELECT fd.Id_field, fd.Fieldcaption, fd.Additioninfo from Fieldsdefinitions fd WHERE fd.Additioninfo=RTrim(:fieldaddit) and fd.Tablename='Actions' INTO :id_fi, :fcap, :faddi do begin SUSPEND; i=i+1; end i=1; fieldaddit='CI'||id_ac; for SELECT fd.Id_field, fd.Fieldcaption, fd.Additioninfo from Fieldsdefinitions fd WHERE fd.Additioninfo=RTrim(:fieldaddit) and fd.Tablename='Actions' INTO :id_fi, :fcap, :faddi do begin SUSPEND; i=i+1; end end end ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 12:07 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
А после LoadFromFile ParamCheck случайно не сбрасывается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 13:15 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
Нет, проверял и принудительно ставил в false, результат без изменений... не работает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 14:07 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
а Query1 это что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 14:35 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
TADOQuery ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 15:17 |
|
||
|
Добавить или модифицировать ХП БД на сервере (IB, MS SQL) из Delphi
|
|||
|---|---|---|---|
|
#18+
Точно не могу сказать, но попробуй весь текст привести к верхнему регистру или хотя бы все переменные. Очень может быть, что ADO не понимает что ID_AC это id_ac .... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 11:13 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32405357&tid=1579222]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
164ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 448ms |

| 0 / 0 |
