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

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

Создание хранимой процедуры программно [D6, IB6.x]


Страницы:   1 2

Брат ©   (2004-11-04 10:36:00) 

Доброе утро!
Не получается создать хранимую процедуру. Запихиваю вот такой текст в IBQuery:

CREATE PROCEDURE MAKETABLE_4
(OBL CHAR(2),DT TIMESTAMP,BUDGET CHAR(1))
RETURNS (TW_RN CHAR(2),s1 NUMERIC(15,2)) AS BEGIN
FOR
SELECT TW_RN,sum(dif(code-13020100+gr-1,dif(code-13020300+gr-1,dif(code-13020400+gr-1,dif(code-13020500+gr-1,dif(code-13020100+ gr-7,dif(code-13020300+gr-7,dif(code-13020400+gr-7,dif(code-13020500+gr-7,0,-1*suma_vsogo*1.00),-1*suma_vsogo*1.00),-1*s uma_vsogo*1.00),-1*suma_vsogo*1.00),suma_vsogo*1.00),suma_vsogo*1.00),suma_vsogo*1.00),suma_vsogo*1.00)) as s1
FROM forms412,tera
WHERE (obl=:obl and dt=:dt and budget=:budget) and
((tera.sr_pg="00" or tera.tip="2") and tera.id_key=forms412.roshirenie) and
((code=13020100 and gr=1) or (code=13020300 and gr=1) or (code=13020400 and gr=1) or (code=13020500 and gr=1) or (code=13020100 and gr=7) or (code=13020300 and gr=7) or (code=13020400 and gr=7) or (code=13020500 and gr=7))
GROUP BY TW_RN
INTO :TW_RN,:s1
DO SUSPEND;
END

и выполняю ExecSQL. Выскакивает ошибка:

"SQL Error code = -104
Token unknown - line 11, char 4"

Хотя когда беру текст и выполняю на сервере - процедура создается без проблем(очевидно что проблема не в синтаксесе, ведь на сервере такая процедура создается и выполняется без проблем. Скорее всего проблема в IBQuery, но конкретно незнаю). Подскажите пожулайста в чем проблема и что делать и как с этим бороться.
Спасибо заранее


Брат   (2004-11-04 16:22:00) [1]


> Johnmen ©   (04.11.04 15:32) [24]
> Какая ?

та же самая:
"SQL Error code = -104
Token unknown - line 11, char 4"

ставлю так в запросе:
tera.sr_pg=''00'' or tera.tip=''2''
в свойствах компонента:
IBQuery.ParamCheck:=False;


Johnmen   (2004-11-04 15:45:00) [2]

Список параметров пуст ?
Без tera.sr_pg=''00'' or tera.tip=''2''работает ?


Брат   (2004-11-04 15:37:00) [3]


> Johnmen ©   (04.11.04 15:32) [24]
> Какая ?

та же самая:
"SQL Error code = -104
Token unknown - line 11, char 4"

ставлю так в запросе:
tera.sr_pg=''00'' or tera.tip=''2''
в свойствах компонента:
IBQuery.ParamCheck:=False;


Johnmen   (2004-11-04 15:32:00) [4]

Какая ?


Брат   (2004-11-04 15:26:00) [5]


> Johnmen ©   (04.11.04 15:20) [22]
> >но все равно не работает
>
> Что это значит ?

это значит что все равно выдается ошибка


Johnmen   (2004-11-04 15:20:00) [6]

>но все равно не работает

Что это значит ?


Брат   (2004-11-04 15:03:00) [7]


> Johnmen ©   (04.11.04 13:15) [20]
> Всем помогает, одному тебе  - нет.
> В ком тогда дело ?
>
> И ещё раз, ЗАЧЕМ тебе IBScript ? Ты что, до сих пор веришь
> в волшебных фей ? При этом ничего про них не зная...

согласен, но пока другого выхода у меня нет, все то что ты предлагал я попробовал, но все равно не работает

с IBScript все хорошо работает


Johnmen   (2004-11-04 13:15:00) [8]

Всем помогает, одному тебе  - нет.
В ком тогда дело ?

И ещё раз, ЗАЧЕМ тебе IBScript ? Ты что, до сих пор веришь в волшебных фей ? При этом ничего про них не зная...


Брат   (2004-11-04 13:13:00) [9]


> Johnmen ©   (04.11.04 13:10) [18]
> IBQuery.ParamCheck:=False;

не помогает

но зато я нашел IBScript - счас буду пробовать :)


Johnmen   (2004-11-04 13:10:00) [10]

IBQuery.ParamCheck:=False;


Брат   (2004-11-04 12:47:00) [11]

^


Брат   (2004-11-04 12:23:00) [12]


> Johnmen ©   (04.11.04 12:16) [15]
> >все равно не работает
>
> Это как ?


запихиваю этот текст в IBQuery.SQL.Text и
выполняю методом ExecSQL. Выскакивает ошибка:

"SQL Error code = -104
Token unknown - line 11, char 4"

я посмотрел символ 4 на строке 11 - это INTO

текст этот я выполняю в SQL Editor'e IBExpert'a - все работает замечательно


Johnmen   (2004-11-04 12:16:00) [13]

>все равно не работает

Это как ?


Брат   (2004-11-04 12:11:00) [14]


> Johnmen ©   (04.11.04 11:58) [13]
> М-да... Трудно что-то объяснить человеку, который просто
> не читает ответов...:(

я в курсе что удвоенные

я поставил : ((tera.sr_pg=''00'' or tera.tip=''2'') and tera.id_key=forms412.roshirenie)
в итоге компилятор интерпретирует их как одинарные, это я знаю

все равно не работает


Johnmen   (2004-11-04 11:58:00) [15]

М-да... Трудно что-то объяснить человеку, который просто не читает ответов...:(
[8]


Брат   (2004-11-04 11:50:00) [16]


> > Johnmen ©   (04.11.04 11:41) [10]
> > >где??? :)
> >
> > Э-э-э-э... Ау, в танке..
> > ((tera.sr_pg="00" or tera.tip="2") and tera.id_key=forms412.roshirenie)
>
> > and

неа не получается
я поставил : ((tera.sr_pg='00' or tera.tip='2') and tera.id_key=forms412.roshirenie)

та же ошибка и все та же проблема :(((


Брат   (2004-11-04 11:47:00) [17]


> Johnmen ©   (04.11.04 11:41) [10]
> >где??? :)
>
> Э-э-э-э... Ау, в танке..
> ((tera.sr_pg="00" or tera.tip="2") and tera.id_key=forms412.roshirenie)
> and

понял счас попробую

> Ещё раз - ЗАЧЕМ тебе IBScript ???

если получится тогда конечно незачем :)


Johnmen   (2004-11-04 11:41:00) [18]

>где??? :)

Э-э-э-э... Ау, в танке..
((tera.sr_pg= "00 "or tera.tip= "2 ") and tera.id_key=forms412.roshirenie) and

Ещё раз - ЗАЧЕМ тебе IBScript ???


Брат   (2004-11-04 11:26:00) [19]


> Johnmen ©


> А зачем тогда указаны ???

где??? :)

я вот нашел ссылку на
IBX Extras Kit (IBXtras) версия 6.01 для Delphi 6, где есть IBScript - http://www.delphiplus.org/borland.html
но отсюда не качается... может есть у кого?


Johnmen   (2004-11-04 11:21:00) [20]

>Брат

Зачем тебе IBScript ?

>ненужны там кавычки

А зачем тогда указаны ???

>Sergey_Masloff   (04.11.04 11:15) [4]

Кавычки одинарные, но удвоенные...:)


Страницы:   1 2

Наверх

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