![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
временная база данных [D6, IB6.x]
AVP_opck © (2004-01-13 08:57:00)
во время выполнения программы нужно сохранять данные во временную базу данных. так чтобы с другой машины этапрограмма сохраняла временные данные в другую базу.
как в IB сделать эту временную базу?
Sergey13 (2004-01-13 10:56:00) [21]
2Johnmen © (13.01.04 10:43) [18]
>если долго "не надо", то почему вдруг станет "надо" ?
Ну например, изменится направление работы. Я сейчас занимаюсь в основном оперативной информацией (подготовка производства). У меня мало здоровенных аналитических запросов. И поэтому мне пока не надо. Если начну заниматься аналитикой и прогнозированием, скорее всего придется применять.
2Vemer © (13.01.04 10:38) [17]
>приведет к росту объема базы
Диски сейчас стоят по доллару за гигабайт. 8-)
Я не утверждаю, что это идеальный инструмент для программирования БД. Я говорю что это равноправный с другими инструмент и ничего изначально предосудительногов его использовании нет.
Sandman25 (2004-01-13 10:50:00) [22]
Ужасная ветка, я в шоке... Неужели вы никогда не сталкивались с тем, что приходилось извращаться всего лишь потому, что в выбранной СУБД нет временных таблиц?
Никто никогда не получал отчеты по нескольким выбранным участкам, по нескольким выбранным товарам, по нескольким выбранным молам, за несколько выбранных периодов??? Как вы в таком случае ограничиваете запрос? Используете динамический SQL??? Ограничиваете возможное число выбранных параметров путем (отчет по 1-3 участкам, например)?
Johnmen (2004-01-13 10:43:00) [23]
>Sergey13 © (13.01.04 10:29)
>...мне пока не надо.
Вот ключевая фраза !
И, вспомнив немного тервер, если долго "не надо", то почему вдруг станет "надо" ?
:)))))))))))
>Danilka © (13.01.04 10:21)
>...вариант с временной таблицей будет быстрее и дешевле для сервера...
Если в этом есть железная уверенность, то конечно...
Vemer (2004-01-13 10:38:00) [24]
Постоянное чтение/запись/удаление из "временных" таблиц в IB к тому-же приведет к росту объема базы насколько я понимаю. На 100% согласен, что это "размягчает мозги". Без временных таблиц замечательно живется, только подумать надо и все. В IB есть View, есть хранимые процедуры, да и стандартный SQL из программы тоже неслабая вещь..
Sergey13 (2004-01-13 10:29:00) [25]
2Johnmen © (13.01.04 10:10) [12]
>Вот в IB нет механизма временных таблиц. И все живут, не тужат...
А вот Оракл, при всей своей навороечнности + PL/SQL, ввел таки с 8и поддержку временных таблиц. К чему бы это?
>Временные таблицы - попытка облегчить "непродвинутому" разработчику жизнь.
Как и индексы, ссылочная целостность, транзакции и прочая фигня. Вот раньше, помню, на клиппере, классно было. Как в песне "Ты знаешь - все в твоих руках". 8-)
>Временные таблицы расхолаживают мыслительный процесс.
Процесс расхолаживает также пиво, сигареты и женщины. Особенно все сразу и много. 8-)
>Любые проблемы можно решить без временных таблиц.
Если с ними проще, то почему нет?
Я лично не использую временные таблицы (даже при их наличии в Оракле), но не по религиозным мотивам, а потому что мне пока не надо.
Danilka (2004-01-13 10:22:00) [26]
Кстати, а чем не временная таблица в ИБ, которая заполняется во время транзакции и всегда очищается перед коммитом? :))
Danilka (2004-01-13 10:21:00) [27]
[12] Johnmen © (13.01.04 10:10)
Ну, вообще-то в ИБ много чего нет, например по сравнению с ороклом, например, нет пакетов, которые очень даже полезны.
А на счет временных таблиц для "непродвинутых", я их тоже сам не использую, в то-же время знаю людей которые активно их используют, и чей уровень считаю намного более "продвинутым" своего. :))
Например, если одну и ту-же задачу можно решить с помощью временной таблицы и без нее, но вариант с временной таблицей будет быстрее и дешевле для сервера, то почему-бы его не использовать?
Жук (2004-01-13 10:18:00) [28]
> AVP_opck (13.01.04 09:19) [7]
> ладно пойдем по пути внесения в таблицу имени компьютера
> с которого запускается прога.
> и условно посчитаем что два раза ее там не запустят.
При чём здесь ИБ ? При запуске приложения проверяйте запущено оно уже или нет...
Johnmen (2004-01-13 10:10:00) [29]
>Sergey13 © (13.01.04 09:50)
Вот в IB нет механизма временных таблиц. И все живут, не тужат...
Далее ИМХО.
Временные таблицы - попытка облегчить "непродвинутому" разработчику жизнь.
Временные таблицы расхолаживают мыслительный процесс.
Любые проблемы можно решить без временных таблиц.
Sergey13 (2004-01-13 09:50:00) [30]
2Johnmen © (13.01.04 09:36) [10]
>Не совсем понял насчет "обычного инструмента". "Обычный" для кого ? Или для чего ?
А чего непонятного? Есть индексы. Это инструмент для быстрого доступа к информации (в частности). Можно им пользоваться, а можно не пользоваться. Временные таблицы - такой же инструмент для увеличения производительности (например). Зачем, например, при многоразовом прогоне сложного запроса гонять его неизменную часть, если можно результаты загнать в вр.таблу и брать их от туда. Но как и любым инструментом, этим надо пользоваться не злоупотребляя.
Johnmen (2004-01-13 09:36:00) [31]
>Sergey13 © (13.01.04 09:31)
Не совсем понял насчет "обычного инструмента". "Обычный" для кого ? Или для чего ?
Sergey13 (2004-01-13 09:31:00) [32]
2Johnmen © (13.01.04 09:12) [6]
>А всякие временные табл. - это от лукавого... Т.е. от недопонимания...:)
Ну почему же? Это обычный инструмент которым надо с умом пользоваться. Вот и все. Индексы тоже могут вредить, если с ними работать без головы.
Johnmen (2004-01-13 09:25:00) [33]
>...условно посчитаем что два раза ее там не запустят.
А что, безусловно никак ? :)))
AVP_opck (2004-01-13 09:19:00) [34]
ладно пойдем по пути внесения в таблицу имени компьютера с которого запускается прога.
и условно посчитаем что два раза ее там не запустят.
Johnmen (2004-01-13 09:12:00) [35]
>AVP_opck (13.01.04 09:06)
Именно другие варианты и имеют смысл. А всякие временные табл. - это от лукавого... Т.е. от недопонимания...:)
Sergey13 (2004-01-13 09:10:00) [36]
>а другие варианты есть?
Есть. Уйти на Оракл например. 8-)
AVP_opck (2004-01-13 09:09:00) [37]
постоянно я таблицы базой обзываю.
понятно наверно что база одна.
AVP_opck (2004-01-13 09:06:00) [38]
ДА да не базу конечно а табличку в базе
ну у меня запрос такой что я делаю промежуточный результат в базу а потом из этого результата еще запрос уже на форму в дбгрид
хм добавить поле. вобщем ваирант надо обдумать. а другие варианты есть?
Sergey13 (2004-01-13 09:04:00) [39]
А потом ты будешь спрашивать как одновременно читать из разных баз? Зачем тебе именно база? Создай отдельную табличку, туда и пиши свои данные. Для работы нескольких пользователей в ней должно быть поле однозначно идентифицирующее сессию/юзера/еще что то. При использовании не забывать чистить эту таблицу.
Johnmen (2004-01-13 09:04:00) [40]
Зачем во временную ?