![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как из клиентской программы создать новую таблицу IB [D6, D7, ib/firebird]
alextim © (2003-09-07 18:26:00)
Мастера подскажите плиз как средствами какого-либо компонента delphi создать на сервере firebird новую таблицу не используя isql.exe
Anatoly Podgoretsky (2003-09-09 11:36:00) [1]
Sergey_Masloff (08.09.03 13:48) [8]
Что так долго, наверно с перекурами после прочтения каждого абзаца :-)
Кстати хорошая штука этот самый LocalSql.hlp всегда под рукой и покрывает 90% справки по ANSI SQL 92
HSolo (2003-09-09 10:56:00) [2]
Во-первых, Zacho © 08.09.03 14:22) [11]: тормозно. Причем уже для сервера, а не для антикварной клиентской машины.
Во-вторых, NDeu © (08.09.03 14:50) [13]: есть ограничения - сколько раз можно это сделать без backup/restore
Если таких отчетов пока 2 - то можно и сделать 2 постоянные таблицы, а там, глядишь, антиквариат заменят :))
Жук (2003-09-09 10:37:00) [3]
> HSolo © (09.09.03 10:15) [25]
1) Пока два :-)
2) Да, каждый раз - разная.
Сделал я, чтоб на клиенте считалось, но тут такие тачки есть - антиквариат, вот и считает минут по десять. Надо было находить выход, вот я и посмотрел в сторону временных таблиц, но Sergey_Masloff (08.09.03 12:12) [4] отговаривает.
На сколько он прав ?
HSolo (2003-09-09 10:15:00) [4]
А что, таких отчетов очень много? И информация из "вспом.базы" каждый раз требуется другая?
Жук (2003-09-09 10:07:00) [5]
Увы, но внешние таблицы не рулят, т.к. "вспомогательная база" - ReadOnly, а данные для внешней таблицы нужны именно из неё. Что же до постоянного хранения "временной" таблицы в "основной" базе, то хранить новую таблицу ради каждого геторогенного отчёта - излишество, имхо.
Жук (2003-09-09 09:50:00) [6]
> Zacho ©
> HSolo ©
Спасибо. Посмотрю.
HSolo (2003-09-09 09:37:00) [7]
> жить таблица не должна, ибо, после нужных расчётов её инфа больше не нужна
Ну и удалите инфу, а таблицу-то за что? :)
А вообще-то, Zacho прав, есть прямой смысл поглядеть в сторону внешних таблиц
Zacho (2003-09-09 09:35:00) [8]
EXTERNAL TABLE. Подробнее смотри в Data Definition Guide, к сожалению у меня сейчас нет под рукой документации.
Жук (2003-09-09 09:25:00) [9]
> Zacho © (09.09.03 09:23)
Что ты называешь "внешней таблицей" ?
Жук (2003-09-09 09:23:00) [10]
Это пока не делается. Идея - новорожденная, поэтому и заинтересовался этой веткой. А жить таблица не должна, ибо, после нужных расчётов её инфа больше не нужна.
ЗЫ. Ну вот, стихами заговорил :-)
Zacho (2003-09-09 09:23:00) [11]
> Жук © (09.09.03 09:11) [16]
Клиент все равно напрягается, ведь перекачка данных из одной БД во "временную" таблицу другой все равно идет через клиента. Имхо, для таких целей лучше все-же использовать внешние таблицы - тогда действительно напрягаться будет только сервер.
HSolo (2003-09-09 09:19:00) [12]
Это делается регулярно? Тогда зачем грохать временную таблицу? Пусть живет, чем она мешает?
Жук (2003-09-09 09:11:00) [13]
Не-е. Идея такая : селектишь из "вспомогательной базы" нужную инфу, загоняешь её во временную таблицу "основной базы", делаешь нужные расчёты/выборки (заметь, что напрягается сервер, а не клиент) и грохаешь временную таблу.
Zacho (2003-09-09 08:48:00) [14]
> Жук © (08.09.03 14:51) [14]
Из нескольких баз - только на клиенте. :-)
А какое отношение к этому имеют "временные" таблицы ?
Или имелись в виду EXTERNAL TABLE ?
Жук (2003-09-08 14:51:00) [15]
> Zacho © (08.09.03 14:22) [11]
А из двух баз как for select"oм что-нить вытащить ? ;-)
NDeu (2003-09-08 14:50:00) [16]
> Да ничего особого, но жутко неудобно И тормозно
Кроме того, ест ограничения сколько раз можно такого делат без б/р
Sergey_Masloff (2003-09-08 14:32:00) [17]
Zacho © (08.09.03 13:51) [9]
>Не, не до переподключения, а до commit"а.
Да, тут я наверное погорячился ;-)
Zacho (2003-09-08 14:22:00) [18]
> Жук © (08.09.03 14:16) [10]
Да ничего особого, но жутко неудобно И тормозно. Да и нужны ли вообще временные таблицы, если есть FOR SELECT ?
Жук (2003-09-08 14:16:00) [19]
> Zacho © (08.09.03 13:51) [9]
>
> Не, не до переподключения, а до commit"а.
Вот именно ! Делаем таблицу, коммитим транзакцию и вперёд !
Что тут криминального ?
Zacho (2003-09-08 13:51:00) [20]
> Sergey_Masloff (08.09.03 13:42) [7]
Не, не до переподключения, а до commit"а.