Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.29;
Скачать: CL | DM;

Вниз

Как из клиентской программы создать новую таблицу IB   Найти похожие ветки 

 
alextim   (2003-09-07 18:26) [0]

Мастера подскажите плиз как средствами какого-либо компонента delphi создать на сервере firebird новую таблицу не используя isql.exe


 
Sergey_Masloff   (2003-09-07 19:28) [1]

Любой компонент позволяющий выполнить команду SQL подойдет. Ну TIBQuery например. Create table пишешь и все. В чем проблема?


 
Sergey_Masloff   (2003-09-07 19:29) [2]

Да, кстати если ты собираешься эмулировать временные таблицы то не стоит. Для IB ищи другое решение.


 
Жук ©   (2003-09-08 11:21) [3]

Чем плохо это ?


 
Sergey_Masloff   (2003-09-08 12:12) [4]

Жук © (08.09.03 11:21) [3]
>Чем плохо это ?
Если коротко - то ВСЕМ. Если длинно то надо писать статью, а чего ее писать когда их полно понаписано все равно никто не читает. Вобщем, поверь на слово, чтоли...


 
Жук ©   (2003-09-08 13:21) [5]

"Не верю !" (с) :-)
Хоть урлу кинь, плз.


 
Anatoly Podgoretsky ©   (2003-09-08 13:29) [6]

Да чего далеко ходить, пример есть в справке по Local SQL и аналогичный пример есть в справке по IB


 
Sergey_Masloff   (2003-09-08 13:42) [7]

Жук © (08.09.03 13:21) [5]
>"Не верю !" (с) :-)
>Хоть урлу кинь, плз.
www.ibase.ru

Ну хотя бы то что созданную таблицу ты не увидишь пока не закроешь а потом снова откроешь соединение. Что ИМХО делает попытку использования такой таблицы как временной просто бредом.


 
Sergey_Masloff   (2003-09-08 13:48) [8]

Anatoly Podgoretsky © (08.09.03 13:29) [6]
>Да чего далеко ходить, пример есть в справке по Local SQL и >аналогичный пример есть в справке по IB
Настоящие дельфисты справку не читают. Гораздо проще задать вопрос на форум и подождать пару дней чем убить 15 минут на прочтение справки ;-)


 
Zacho ©   (2003-09-08 13:51) [9]


> Sergey_Masloff (08.09.03 13:42) [7]

Не, не до переподключения, а до commit"а.


 
Жук ©   (2003-09-08 14:16) [10]


> Zacho © (08.09.03 13:51) [9]
>
> Не, не до переподключения, а до commit"а.

Вот именно ! Делаем таблицу, коммитим транзакцию и вперёд !
Что тут криминального ?


 
Zacho ©   (2003-09-08 14:22) [11]


> Жук © (08.09.03 14:16) [10]

Да ничего особого, но жутко неудобно И тормозно. Да и нужны ли вообще временные таблицы, если есть FOR SELECT ?


 
Sergey_Masloff   (2003-09-08 14:32) [12]

Zacho © (08.09.03 13:51) [9]

>Не, не до переподключения, а до commit"а.
Да, тут я наверное погорячился ;-)


 
NDeu ©   (2003-09-08 14:50) [13]


> Да ничего особого, но жутко неудобно И тормозно

Кроме того, ест ограничения сколько раз можно такого делат без б/р


 
Жук ©   (2003-09-08 14:51) [14]


> Zacho © (08.09.03 14:22) [11]

А из двух баз как for select"oм что-нить вытащить ? ;-)


 
Zacho ©   (2003-09-09 08:48) [15]


> Жук © (08.09.03 14:51) [14]

Из нескольких баз - только на клиенте. :-)
А какое отношение к этому имеют "временные" таблицы ?
Или имелись в виду EXTERNAL TABLE ?


 
Жук ©   (2003-09-09 09:11) [16]

Не-е. Идея такая : селектишь из "вспомогательной базы" нужную инфу, загоняешь её во временную таблицу "основной базы", делаешь нужные расчёты/выборки (заметь, что напрягается сервер, а не клиент) и грохаешь временную таблу.


 
HSolo ©   (2003-09-09 09:19) [17]

Это делается регулярно? Тогда зачем грохать временную таблицу? Пусть живет, чем она мешает?


 
Zacho ©   (2003-09-09 09:23) [18]


> Жук © (09.09.03 09:11) [16]

Клиент все равно напрягается, ведь перекачка данных из одной БД во "временную" таблицу другой все равно идет через клиента. Имхо, для таких целей лучше все-же использовать внешние таблицы - тогда действительно напрягаться будет только сервер.


 
Жук ©   (2003-09-09 09:23) [19]

Это пока не делается. Идея - новорожденная, поэтому и заинтересовался этой веткой. А жить таблица не должна, ибо, после нужных расчётов её инфа больше не нужна.
ЗЫ. Ну вот, стихами заговорил :-)


 
Жук ©   (2003-09-09 09:25) [20]


> Zacho © (09.09.03 09:23)

Что ты называешь "внешней таблицей" ?


 
Zacho ©   (2003-09-09 09:35) [21]

EXTERNAL TABLE. Подробнее смотри в Data Definition Guide, к сожалению у меня сейчас нет под рукой документации.


 
HSolo ©   (2003-09-09 09:37) [22]

> жить таблица не должна, ибо, после нужных расчётов её инфа больше не нужна

Ну и удалите инфу, а таблицу-то за что? :)
А вообще-то, Zacho прав, есть прямой смысл поглядеть в сторону внешних таблиц


 
Жук ©   (2003-09-09 09:50) [23]


> Zacho ©


> HSolo ©

Спасибо. Посмотрю.


 
Жук ©   (2003-09-09 10:07) [24]

Увы, но внешние таблицы не рулят, т.к. "вспомогательная база" - ReadOnly, а данные для внешней таблицы нужны именно из неё. Что же до постоянного хранения "временной" таблицы в "основной" базе, то хранить новую таблицу ради каждого геторогенного отчёта - излишество, имхо.


 
HSolo ©   (2003-09-09 10:15) [25]

А что, таких отчетов очень много? И информация из "вспом.базы" каждый раз требуется другая?


 
Жук ©   (2003-09-09 10:37) [26]


> HSolo © (09.09.03 10:15) [25]

1) Пока два :-)
2) Да, каждый раз - разная.

Сделал я, чтоб на клиенте считалось, но тут такие тачки есть - антиквариат, вот и считает минут по десять. Надо было находить выход, вот я и посмотрел в сторону временных таблиц, но Sergey_Masloff (08.09.03 12:12) [4] отговаривает.
На сколько он прав ?


 
HSolo ©   (2003-09-09 10:56) [27]

Во-первых, Zacho © 08.09.03 14:22) [11]: тормозно. Причем уже для сервера, а не для антикварной клиентской машины.
Во-вторых, NDeu © (08.09.03 14:50) [13]: есть ограничения - сколько раз можно это сделать без backup/restore

Если таких отчетов пока 2 - то можно и сделать 2 постоянные таблицы, а там, глядишь, антиквариат заменят :))


 
Anatoly Podgoretsky ©   (2003-09-09 11:36) [28]

Sergey_Masloff (08.09.03 13:48) [8]
Что так долго, наверно с перекурами после прочтения каждого абзаца :-)
Кстати хорошая штука этот самый LocalSql.hlp всегда под рукой и покрывает 90% справки по ANSI SQL 92



Страницы: 1 вся ветка

Текущий архив: 2003.09.29;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.016 c
1-96163
Fantom_
2003-09-16 13:45
2003.09.29
Разноцветный StringGrid


1-96279
Tumcoat
2003-09-15 04:30
2003.09.29
Строки в Word-е


1-96212
Dimedrol
2003-09-18 12:22
2003.09.29
Как посмотреть PDF ?


1-96188
maxXP
2003-09-15 22:25
2003.09.29
Как определить папку работ-го приложения?


1-96259
s_ser
2003-09-16 14:00
2003.09.29
Проблема с ActiveX в WinXP