как создать процедуру?

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
nevermind
Сообщения: 3
Зарегистрирован: 18 окт 2005, 12:12

как создать процедуру?

Сообщение nevermind » 18 окт 2005, 13:07

впервые с интербейсом работаю... Не получается хранимую процедуру создать
пишу так:
create procedure getCli
as
begin
select cliid, cliname, orgid
from clis;
end;

говорит - Dynamic SQL Error
SQL error code = -104
Unexpected end of command

я так:
create procedure getCli
as
begin
for select cliid, cliname, orgid from clis
do
begin
suspend;
end
end;

а он:
Dynamic SQL Error
SQL error code = -104
Token unknown - line 6, char 0
Do

Как правильно-то?

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 18 окт 2005, 13:12

Правильно так, как правильно. Language Reference, Procedures and Triiggers. Data Definition Guide, Working with Procedures, Working with Triggers.

nevermind
Сообщения: 3
Зарегистрирован: 18 окт 2005, 12:12

Сообщение nevermind » 18 окт 2005, 14:04

А там селект в селекте можно использовать?
Т.е. надо сделать так: select cliid, cli, org, get_disc(cliid) from clis
get_disc - это процедура.
или так select cliid, cli, org, disc = (select * from get_disc(cliid)) from clis

Slava Ekimov
Сообщения: 44
Зарегистрирован: 26 окт 2004, 14:30

Сообщение Slava Ekimov » 18 окт 2005, 15:37

nevermind писал(а):А там селект в селекте можно использовать?
Там все можно :D :D :D :D :D

nevermind
Сообщения: 3
Зарегистрирован: 18 окт 2005, 12:12

Сообщение nevermind » 18 окт 2005, 15:57

а как?
хочу создать процедуру, в к-рой селектится таблица с колонками cliid, cli, org + колонка disc с данными к-рые возвращает процедура для каждого cliid.
как это сделать?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 18 окт 2005, 18:31

сейчас топик удалю. документацию не хочешь читать, совсем?

Ivan_Pisarevsky
Заслуженный разработчик
Сообщения: 644
Зарегистрирован: 15 фев 2005, 11:34

Сообщение Ivan_Pisarevsky » 19 окт 2005, 08:16

Вдумчиво дочитываем доку до слова "into", далее медленно и три раза со слова "into" и до конца приведенного Мерлином документа:lol:

Ответить