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

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

Несколько запросов подряд [D7, FireBird]


MikeZ ©   (2011-08-24 23:45:00) 

Здравствуйте!

Есть нужда сделать несколько запросов к базе (использую FIBPlus). Сейчас делаю так:
DSetCnt.Close;
 TpFIBDataSet1.SelectSQL.Text := 'DROP PROCEDURE Proc1';
 TpFIBDataSet1.Open;
 TpFIBDataSet1.Close;
 TpFIBDataSet1.SelectSQL.Text := 'DROP PROCEDURE Proc2';
 TpFIBDataSet1.Open;

Т.е. для получение результата приходится постоянно делать Close-SelectSQL-Open. Как по мне, это не сильно красиво, хоть и работает.

Нет ли какого способа указать несколько команд сразу, а потом выполнить их последовательно сразу все?


Кщд   (2011-08-26 09:48:00) [1]

>MikeZ   (26.08.11 00:00) [6]
чего хочется добиться, выполняя ddl и dml в одном скрипте?


MikeZ   (2011-08-26 00:00:00) [2]

Да, скрипт - это не совсем то.
Сделал на Query, раз таки дела.


Anatoly Podgoretsky   (2011-08-25 10:01:00) [3]

> Sergey13  (25.08.2011 09:40:04)  [4]

Вообще то это не несколько запросов подряд, а создание внешней процедуры,
что не особо рекомендуется и не удобно.


Sergey13   (2011-08-25 09:40:00) [4]

> [2] MikeZ   (25.08.11 00:19)
> Я по ключевым словам погуглил (в т.ч. - по докам FIPlus)
> - ничего внятного я не нашел :(

Странно. Первая ссылка в гугле по поиску "FIPlus скрипт"
http://www.atstariff.com/fibscript/
Не подойдет?


Anatoly Podgoretsky   (2011-08-25 07:32:00) [5]

> MikeZ  (25.08.2011 00:19:02)  [2]

Для большинства СУБД это не проблема, но видимо не здесь.


MikeZ   (2011-08-25 00:19:00) [6]

Я по ключевым словам погуглил (в т.ч. - по докам FIPlus) - ничего внятного я не нашел :(

P.S. Запросы могут быть совершенно разными, в т.ч. - никак не связанными друг с другом. Например:
CREATE PROCEDURE Proc1...
SELECT * FROM Table1


Главное, чтобы была возможность сначала всех из указать (2, 5, 100..), а потом выполнить их всех одним пинком.


sniknik   (2011-08-24 23:54:00) [7]

> Т.е. для получение результата приходится постоянно делать Close-SelectSQL-Open.
зачем так сурово? разве в фибах нет возможности командных запросов? (типа ADOCommand для ADO, или XXXQuery для XXX)

а насчет выполнения пакетом команд, это нужно доку по движку смотреть. в некоторых это возможно.


Наверх

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