|
|
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
В очередной раз взываю к мощи бывалых пользователей IB. Я правильно понял, что для каждой таблиицы нужен генератор для ID записи? Для каждой таблицы тригер на вставку с вызовом этого генератора? Удаленные записи к жизни возвращать можно (нужно) или втыкать новые? Раньше все писал на FOXе поэтому эти вопросы, как бы, для успешного перехода на IB. Просто таблиц в проекте 30 штук вот и вопросы.... и FOX медленнее вставляет и удаляет чем редактирует (плюс не надо ничего чистить), а как IB? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 10:23 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
2MaestroEv >Я правильно понял, что для каждой таблиицы нужен генератор для ID записи? Нет. Можно и одним обойтись. Как больше ндравится. >Для каждой таблицы тригер на вставку с вызовом этого генератора? Да. >Удаленные записи к жизни возвращать можно (нужно) или втыкать новые? "Возврат" не предусмотрен. >Раньше все писал на FOXе поэтому эти вопросы, как бы, для успешного перехода на IB. Просто таблиц в проекте 30 штук вот и вопросы.... и FOX медленнее вставляет и удаляет чем редактирует (плюс не надо ничего чистить), а как IB? А это как сделаешь. Тут только руки и голова. Наличие-отсутствие тормозов от сервера БД зависят не в первую очередь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 10:36 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
>Я правильно понял, что для каждой таблиицы нужен генератор для ID записи? >Для каждой таблицы тригер на вставку с вызовом этого генератора? В принципе - да, но возможны варианты (ID на клиенте, один генератор для всех таблиц ...). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 10:37 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
>>для каждой таблиицы нужен генератор для ID записи? Генератор помогает обеспечить уникальность. При любом очередном вызове gen_id(Имя_генератора,1) ты получаешь приращение генератора на 1. Вне зависимости от "одновременности" вызова многими клиентами. Нужна уникальность - можно использовать этот механизм. Здесь писали о проектах а) когда используется 1 генератор на все таблицы б) когда используется 2 генератора на одну таблицу все зависит от задачи и изворотливости :-) мысли разработчика >>Для каждой таблицы тригер на вставку с вызовом этого генератора? Можно через триггер, можно на клиенте перед вставкой получить значение генератора и тогда триггер не нужен. select gen_id(Имя_генератора,1) from rdb$database rdb$database - это системная таблица, в которой гарантировано находится 1 запись, все часто используют такое ее свойство. >>Удаленные записи к жизни возвращать можно (нужно) или втыкать новые? При удалении записи в IB удаляются совсем, а не помечаются на удаление. RESTORE и PACK здесь нету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 10:51 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
>Я правильно понял, что для каждой таблиицы нужен генератор для ID записи? Что значит для каждой? Где ПК должен генериться сервером - там его можно использовать. >Для каждой таблицы тригер на вставку с вызовом этого генератора? Не для каждой, а для тех, для которых оно необходимо. >Удаленные записи к жизни возвращать можно (нужно) или втыкать новые? Это я вобще не понял про что. >перехода на IB. Просто таблиц в проекте 30 штук вот и вопросы.... и FOX >медленнее вставляет и удаляет чем редактирует (плюс не надо ничего >чистить), а как IB? Все так тормозят, т.к. при вставках и удалениях обычно индексы надо перестраивать, поэтому и тормозит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 10:54 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
Уточните, пожалуйста. Программа по ходу жизни добаляет записи в таблицу и стирает. А жизнь у программы может быть и год и два и пять... Вопрос. Счетчик генератора дойдет до конца и че? Особенно если один на несколько? Я из-за этого в FOXe все уникальные ключи делал буквенные - это что-то типа ххх-ричной системы счисления (Большие, маленькие, русские, английские, цифры и.т.п.) А так получается программа на IB имеет конец? Или есть способ как-то упорядочить уникальные коды записей? Или я зря переживаю? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 15:15 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
2MaestroEv >Или я зря переживаю? Зря >Спасибо. Пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 15:25 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
Не совсем зря Это зависит от типа поля например если ты сделаеш тип поля byte то генератор работает до 255 (я так думаю) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2003, 15:37 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
MaestroEv ну посчитай сам зря ты переживаешь или нет.... Максимальное значение для integer (которое обычно используется как праймари кей) более 2 миллиардов. Даже если по 10 значений генератора в секунду, то этого резерва тебе хватает более чем на 200 000 000 секунд или 55 555 часов, или 2314 суток, или на 6 лет. Вот в принципе и все.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2003, 03:18 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
Значит все-таки программа умрет через хх лет... Есть у меня один старый проектик на FOXE - ему сейчас шесть лет - и он ближе к смерти не стал, а здесь в самом начале роем могилу программе... Не привык я... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2003, 04:05 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
>MaestroEv А ты представь себе проект, который 10 раз в секунду в режиме 24х7, это же ... В реальности, при правильной организации БД, "срок жизни" уникального ключа увеличивается минимум в ~10 раз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2003, 07:32 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
MaestroEv я думаю прежде умрет у тебя место на диске :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2003, 08:01 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
2MaestroEv >Счетчик генератора дойдет до конца и че? >Значит все-таки программа умрет через хх лет... Нетленку пишешь? 8-) К замечаниям, высказанным выше, могу добавить, что генератор можно пустить еще раз с 1, но с минусом. А это уже 12 лет. 8-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2003, 10:05 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
Ну если очень нужно, можно взять текстовый ID - комбинация значений 2-х генераторов + XP, которая его генерит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2003, 15:38 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
>Я правильно понял, что для каждой таблиицы нужен генератор для ID записи? >Для каждой таблицы тригер на вставку с вызовом этого генератора? >Удаленные записи к жизни возвращать можно (нужно) или втыкать новые? В Interbase (IB) МОЖНО использовать генератор для получения очередных значений, это УДОБНО, но не обязательно. Генератор использует для внутреннего хранения 64 - разрядное целое. Если в секуду генерить по миллиону записей, то хватит на 584942,41735507203247082699137494 лет. >Просто таблиц в проекте 30 штук вот и вопросы.... Если в проекте у тебя 1000 (тысяча) таблиц и один генератор на все, то хватит на 584,94241735507203247082699137494 лет. Если все равно мало, то генераторы можешь не использовать. Работай, каку работал раньше. Основное их преимущество удобство. ОНИ СУЩЕСТВУЮТ ВНЕ КОНТЕКСТА ТРАНЗАКЦИЙ. >Раньше все писал на FOXе поэтому эти вопросы, как бы, для успешного >перехода на IB. и FOX >медленнее вставляет и удаляет чем редактирует (плюс не надо ничего >чистить), а как IB? Чистить ничего не надо, но при интесивном изменении данных рекомендуется делать backup - restore - чтобы поддерживать систему индексации в состоянии боевой готовности (со временем скорость доступа может упасть). Еще - после FOXPRO заметишь, что здесь не так просто с индексацией "по чему бог на душу положит", почти нет встроенных функций в SQL - запросах, но зато с надежностью - высший класс. Переходи. Будут вопросы - задавай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2003, 17:03 |
|
||
|
Несколько простых вопросов.
|
|||
|---|---|---|---|
|
#18+
Спасибо всем. Особенно помог Владимир Малиновский. Просто так написал "переходи"... А то я чем дальше читаю книгу по IB, тем больше мне плохо делается. Все описано как само собой разумеющееся, а для меня 10 лет (во время летит...) FOXa не прошли даром - мозги уже набекрень. Простые по IB -шным меркам вопросы - для меня тупик. Синтаксис SQL языка другой... Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2003, 04:33 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=504&tid=1579930]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 436ms |

| 0 / 0 |
