Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];

Вниз

Как из клиентской программы создать новую таблицу 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.016 c
3-96078
savva
2003-09-09 16:59
2003.09.29
Как удалить BDE?


6-96335
IBSN
2003-08-01 11:05
2003.09.29
ClientSocket


1-96296
Ury
2003-09-15 19:08
2003.09.29
Редактировани текста в TTreeView


3-96115
Russko
2003-09-09 09:35
2003.09.29
Фильтрация в TTable


9-96042
Jackson
2002-10-14 23:20
2003.09.29
В очередь!!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский