Вниз
Скачать: CL | DM;

Execute statement - error :(   Найти похожие ветки 

← →
Соловьев ©   (2004-04-14 15:35) [0]

Кто-то решал трабл? Пытаюсь в ХП выполнить запрос вида

...
EXECUTE STATEMENT "SELECT GEN_ID("||MY_GENERATOR_NAME||",1) FROM RDB$DATABASE" INTO :ID;
...

Выскакивает ошибка при выполнении ХП, но самое интересное что генератор щелкнул :) А мне надо в ХП значение получить...


← →
Johnmen ©   (2004-04-14 15:37) [1]

>Выскакивает ошибка

?


← →
Соловьев ©   (2004-04-14 15:45) [2]

Variable type (position 0) in EXECUTE STATEMENT "SELECT GEN_ID(MY_GENERATOR,1) FROM RDB$DATABASE" INTO does not match returned
co.


← →
Соловьев ©   (2004-04-14 15:46) [3]

Если проходить дебагом в эксперте - то не выскакивает... Может глюкс эксперта?


← →
Johnmen ©   (2004-04-14 15:51) [4]

М.б. вся команда в ""
EXECUTE STATEMENT "SELECT GEN_ID("||MY_GENERATOR_NAME||",1) FROM RDB$DATABASE INTO :ID";


← →
Kadr ©   (2004-04-14 15:53) [5]

в режиме отладки в эксперте ошибки не выскакивают


← →
Соловьев ©   (2004-04-14 15:56) [6]


> Johnmen ©   (14.04.04 15:51) [4]

Invalid token.
Dynamic SQL error.
SQL error code = -104.
Token unknown - line 1, char 47.
INTO.


← →
Соловьев ©   (2004-04-14 15:59) [7]

С приложения теже самые ошибки - значит не в эксперте дело...Глюк ФБ.


← →
Kadr ©   (2004-04-14 16:02) [8]

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 16:06) [9]


> Kadr ©   (14.04.04 16:02) [8]

Error convert string


← →
Kadr ©   (2004-04-14 16:08) [10]

при выполнении? или компиляции?
Версия эксперта?
2004.04.04 компиляция проходит (выполнять не пробовал)


← →
Соловьев ©   (2004-04-14 16:11) [11]


> 2004.04.04 компиляция проходит (выполнять не пробовал)

попробуй.
У меня 2004.04.08


← →
Соловьев ©   (2004-04-14 16:13) [12]


> при выполнении? или компиляции?

проблем с компиляцией нет, проблемы всегда при выполнении. Первый мой пост работает, т.е генератор щелкает, но результата я не вижу в ХП


← →
Johnmen ©   (2004-04-14 16:29) [13]

>Соловьев ©   (14.04.04 15:56) [6]

EXECUTE STATEMENT "SELECT GEN_ID("||MY_GENERATOR_NAME||",1) INTO :ID FROM RDB$DATABASE";

:)


← →
Соловьев ©   (2004-04-14 16:32) [14]


> Johnmen ©   (14.04.04 16:29) [13]


> Соловьев ©   (14.04.04 15:56) [6]


:)


← →
Соловьев ©   (2004-04-14 17:12) [15]

Ну что? Никак... может Еманову позвонить? :)


← →
Johnmen ©   (2004-04-14 17:16) [16]

А что по поводу [13] ?


← →
Соловьев ©   (2004-04-14 17:19) [17]


> Соловьев ©   (14.04.04 16:32) [14]


← →
Johnmen ©   (2004-04-14 17:21) [18]

Не понял...
В [0] у тебя для начала просто синтаксическая ошибка...


← →
Соловьев ©   (2004-04-14 17:24) [19]


> 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-15 11:23) [20]

>Соловьев ©   (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-15 11:29) [21]


> 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




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

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.03 c
14-1079641205
Обитатель
2004-03-18 23:20
2004.04.11
eMule - как настроить ?


1-1080039041
Allexx
2004-03-23 13:50
2004.04.11
Case системы


9-1064820322
MYSTERYO
2003-09-29 11:25
2004.04.11
Где б достать персонажей для квеста?


1-1079866444
Def_128
2004-03-21 13:54
2004.04.11
Ошибка при работе с DLL. "access violation at ... "


14-1082288623
Sur
2004-04-18 15:43
2004.04.11
Почему русскому программисту судит американский суд?




   Наверх