![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Execute statement - error :( [D6, FB 1.5]
Соловьев © (2004-04-14 15:35:00)Кто-то решал трабл? Пытаюсь в ХП выполнить запрос вида
...
EXECUTE STATEMENT 'SELECT GEN_ID('||MY_GENERATOR_NAME||',1) FROM RDB$DATABASE' INTO :ID;
...
Выскакивает ошибка при выполнении ХП, но самое интересное что генератор щелкнул :) А мне надо в ХП значение получить...
Соловьев (2004-04-15 11:29:00) [1]
> Johnmen © (15.04.04 11:23) [20]
Та же документация говорит мне о другом :)
Syntax 2
=========
EXECUTE STATEMENT <string> INTO :var1, ., :varn;
Description
Executes <string> as SQL operation, returning single data row. Only
singleton SELECT operators may be executed with this form of EXECUTE
STATEMENT.
Sample:
CREATE PROCEDURE DynamicSampleTwo (TableName VARCHAR(100))
AS
DECLARE VARIABLE Par INT;
BEGIN
EXECUTE STATEMENT 'SELECT MAX(CheckField) FROM ' || TableName INTO :Par;
IF (Par > 100) THEN
EXCEPTION Ex_Overflow 'Overflow in ' || TableName;
END
Johnmen (2004-04-15 11:23:00) [2]>Соловьев © (14.04.04 17:24) [19]
>нету там ошибки
Да? Странно... Документация говорит о другом...
Syntax SELECT [TRANSACTION transaction]
[DISTINCT | ALL]
{* | <val> [, <val> …]}
[INTO :var [, :var …]]
FROM <tableref> [, <tableref> …]
[WHERE <search_condition>]
...
Может здесь ошибка ? И я сам уже забыл синтаксис...
Соловьев (2004-04-14 17:24:00) [3]
> Johnmen © (14.04.04 16:29) [13]
Invalid token.
Dynamic SQL error.
SQL error code = -104.
Token unknown - line 1, char 47.
INTO.
> Johnmen © (14.04.04 17:21) [18]
нету там ошибки
Johnmen (2004-04-14 17:21:00) [4]Не понял...
В [0] у тебя для начала просто синтаксическая ошибка...
Соловьев (2004-04-14 17:19:00) [5]
> Соловьев © (14.04.04 16:32) [14]
Johnmen (2004-04-14 17:16:00) [6]А что по поводу [13] ?
Соловьев (2004-04-14 17:12:00) [7]Ну что? Никак... может Еманову позвонить? :)
Соловьев (2004-04-14 16:32:00) [8]
> Johnmen © (14.04.04 16:29) [13]
> Соловьев © (14.04.04 15:56) [6]
:)
Johnmen (2004-04-14 16:29:00) [9]>Соловьев © (14.04.04 15:56) [6]
EXECUTE STATEMENT 'SELECT GEN_ID('||MY_GENERATOR_NAME||',1) INTO :ID FROM RDB$DATABASE';
:)
Соловьев (2004-04-14 16:13:00) [10]
> при выполнении? или компиляции?
проблем с компиляцией нет, проблемы всегда при выполнении. Первый мой пост работает, т.е генератор щелкает, но результата я не вижу в ХП
Соловьев (2004-04-14 16:11:00) [11]
> 2004.04.04 компиляция проходит (выполнять не пробовал)
попробуй.
У меня 2004.04.08
Kadr (2004-04-14 16:08:00) [12]при выполнении? или компиляции?
Версия эксперта?
2004.04.04 компиляция проходит (выполнять не пробовал)
Соловьев (2004-04-14 16:06:00) [13]
> Kadr © (14.04.04 16:02) [8]
Error convert string
Kadr (2004-04-14 16:02:00) [14]CREATE PROCEDURE DELET (
GEN VARCHAR(10))
RETURNS (
ID INTEGER)
AS
begin
EXECUTE STATEMENT 'SELECT GEN_ID('||GEN||',1) FROM RDB$DATABASE INTO'|| :ID;
suspend;
end
Соловьев (2004-04-14 15:59:00) [15]С приложения теже самые ошибки - значит не в эксперте дело...Глюк ФБ.
Соловьев (2004-04-14 15:56:00) [16]
> Johnmen © (14.04.04 15:51) [4]
Invalid token.
Dynamic SQL error.
SQL error code = -104.
Token unknown - line 1, char 47.
INTO.
Kadr (2004-04-14 15:53:00) [17]в режиме отладки в эксперте ошибки не выскакивают
Johnmen (2004-04-14 15:51:00) [18]М.б. вся команда в ''
EXECUTE STATEMENT 'SELECT GEN_ID('||MY_GENERATOR_NAME||',1) FROM RDB$DATABASE INTO :ID';
Соловьев (2004-04-14 15:46:00) [19]Если проходить дебагом в эксперте - то не выскакивает... Может глюкс эксперта?
Соловьев (2004-04-14 15:45:00) [20]Variable type (position 0) in EXECUTE STATEMENT 'SELECT GEN_ID(MY_GENERATOR,1) FROM RDB$DATABASE' INTO does not match returned
co.