powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Как вывести в ibexpert (firebird) строки из таблицы при помощи for
25 сообщений из 28, страница 1 из 2
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008090
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дали в институте задание написать хранимую процедуру и в ней с помощью оператора цикла for вывести строки из таблицы book.

Таблица book выглядит так
Aid Nazvanie
Проблема в том что написанная хранимая процедура выводит только последнюю строку.
1) Как написать чтобы при обращении к процедуре она выводила все строки, а не только последнюю ?
2) Как задать условие чтобы выводила только строки где aid > 5 (лучше с помощью if) ?

Написал скрипт:

CREATE PROCEDURE GGG
returns (
v varchar(30),
vv integer)
as
declare variable vvv integer;
declare variable vg varchar(30);
begin
/* Procedure Text */
for select aid, nazvanie
from book
into : vvv, vg
do
v=vg;
vv=vvv;

suspend;
end
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008107
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.

Код: plaintext
1.
2.
3.
4.
5.
for select -- выборка необходимых данных из таблиц
do
begin
  -- присвоение значений выходным параметрам
  suspend;
end

2. RTFM Where. И лучше, как раз, не с помощью if, а с помощью Where.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008109
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в институте так же дают знания, ну а тебе ссылочку www.ibase.ru
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008119
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дружище ты все форумы бомбишь, и на мисте такой же вопрос задал
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008135
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем
Я преформулирую вопрос: Почему хранимая процедура (текст я привел выше) при вызове возврашает только одну последнюю строку? Почему она не возвращает все строки таблицы book?
Как её заставить выводит все строки таблицы book?
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008139
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SlaveOwner пишу потому что сегодня сдаю зачет и без этой хранимой процедуры его непримут. Времени осталось 1,5 часа.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008145
joker 79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, да прочитай же второй ответ
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008148
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sidalexsandrЯ преформулирую вопрос: Почему хранимая процедура (текст я привел выше) при вызове возврашает только одну последнюю строку? Почему она не возвращает все строки таблицы book?
Как её заставить выводит все строки таблицы book?А я свой ответ (п.1.) переформулировать не собираюсь.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008160
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
do
begin
тра ла ла;
suspend;
end

, Рустам описал решение, смотри первый ответ
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008161
joker 79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
joker 79Блин, да прочитай же второй ответ

Сорри имел ввиду 2ой пост (ну или 1ый ответ) :)
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008234
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SlaveOwner добавил я begin как ты советуеш. Короче то же самое
когда пишу select * from ХранимаяПроцедура
опять получаю одну последнюю строку из таблицы BOOK.
Скажи чего не так делаю?
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008248
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sidalexsandrСкажи чего не так делаю?Врешь нескладно.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008250
all2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да сказали тебе еще в 1 ответе))
Внеси процедуру вывода данных внутрь программных скобок!

for select -- выборка необходимых данных из таблиц
do
begin
-- присвоение значений выходным параметрам
suspend;
end
(с)
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008252
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sidalexsandrSlaveOwner добавил я begin как ты советуеш. Короче то же самое
когда пишу select * from ХранимаяПроцедура
опять получаю одну последнюю строку из таблицы BOOK.
Скажи чего не так делаю?

Посоветовал первый Рустам.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
CREATE PROCEDURE GGG
returns (
  v varchar( 30 ),  
  vv integer)
as
  declare variable vvv integer;
  declare variable vg varchar( 30 );
begin
/* Procedure Text */
  for select aid, nazvanie
       from book
       into : vvv, vg
  do
  begin
       v=vg;
       vv=vvv;
       suspend;
  end
end

Либо у тебя в таблице одна запись
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008255
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, переменные в этой процедуре не нужны -
можно сразу в выходные параметры фетчить значения.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008262
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlaveOwnerЛибо у тебя в таблице одна записьНе. У него там еще что-то про "aid > 5" говорилось. Случайно такое не бывает.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008268
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамSlaveOwnerЛибо у тебя в таблице одна записьНе. У него там еще что-то про "aid > 5" говорилось. Случайно такое не бывает.

Я уже и задание забыл, тогда вот так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CREATE PROCEDURE GGG
returns (
  v varchar( 30 ),  
  vv integer)
as
begin
/* Procedure Text */
  for select aid, nazvanie
       from book
       where aid >  5 
       into : v, vv
  do
       suspend;
end

а если с if, то
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CREATE PROCEDURE GGG
returns (
  v varchar( 30 ),  
  vv integer)
as
begin
/* Procedure Text */
  for select aid, nazvanie
       from book
       where aid >  5 
       into : v, vv
  do
    if (:aid >  5 ) then       
      suspend;
end
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008278
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с if не оптимально, т.к. вдруг у тебя там книг собрание на 1 000 000 и более, меньше будешь сервак нагружать с where
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008281
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SlaveOwner - Спасибо последний вариант фурычит, выводит как положенно все строки.
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008283
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SlaveOwner
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
  for select aid, nazvanie
       from book
       where aid >  5 
       into : v, vv
  do
    if (:aid >  5 ) then       
      suspend;
end
Это пять!

P.S. Знаю, знаю, опечатка. :)
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008310
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гаджимурадов Рустам спасибо, убрал лишние переменные
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008345
SlaveOwner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамSlaveOwner
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
  for select aid, nazvanie
       from book
       where aid >  5 
       into : v, vv
  do
    if (:aid >  5 ) then       
      suspend;
end
Это пять!

P.S. Знаю, знаю, опечатка. :)

Внимательный однако, сам со второго раза понял
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008438
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамP.S. Знаю, знаю, опечатка. :)

Это не опечатка, это закладка. Во-первых, ТС сам сказал, что нужно
сделать через IF, а во-вторых, препод не поверил бы, если бы он принёс
такую правильную процедуру. Преподы не такие тупые, они хорошо знают
какой студент на что способен. И если своему лаборанту они ещё позволят
заработать на тупых студентах, то за решение с форума могут и завалить.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008441
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня специально для новичков заготовлено:
http://www.ibase.ru/devinfo/sp_call.htm
...
Рейтинг: 0 / 0
Как вывести в ibexpert (firebird) строки из таблицы при помощи for
    #36008458
sidalexsandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdv _ Хорошая статья, молодец
...
Рейтинг: 0 / 0
25 сообщений из 28, страница 1 из 2
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Как вывести в ibexpert (firebird) строки из таблицы при помощи for
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]