|
|
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Индексы, ограничения и триггеры таблицы принадлежат таблице, как и поля. В этом легко убедиться, дропнув таблицу :) Для индексов, ограничений и триггеров таблиц зачем-то существует требование иметь глобально-уникальное имя в базе. Для названия полей такого ограничения нет. Таким образом, создавая например триггер, постоянно приходится приписывать имя таблицы в качестве префикса. И то же самое приходится проделывать для ограничений и индексов. Слава Богу что этого не нужно делать для полей :) Я бы к примеру предпочёл писать это: Код: sql 1. 2. вместо вот этого: Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 15:26:40 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDee, триггеры могут быть не только для таблицы, ограничения тоже (они ещё для доменов). Триггеры "хранятся" в системной таблице RDB$TRIGGERS соответственно на их имя RDB$TRIGGER_NAME наложен уникальный индекс. Они бывают разных типов уровня БД (коннект/дисконнект, старт/коммит/роллбек), на таблицу (в тройке ещё DDL триггеры). И что теперь на каждый из типов триггеров по отдельной таблице городить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 15:46:36 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Это ведь детали реализации. Я сейчас с более концептуального уровня говорю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 15:50:01 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDee, концептуально надо смотреть что говориться в стандарте. А там, ЕМНИП, триггеры это отдельный объект БД. Да и вроде в других СУБД так. А то что триггеры удаляются вместе таблицей так это правильно, иначе триггер "инвалидный" будет, а в FB инвалидные объекты не допускаются (Это тебе не Оракл ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 15:57:02 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Симонов Денисконцептуально надо смотреть что говориться в стандарте.А чувство здравого смысла что говорит? :) Чем поля таблиц отличаются в этом смысле от индексов таблицы, или триггеров таблицы, или табличных ограничений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:01:09 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDeeСимонов Денисконцептуально надо смотреть что говориться в стандарте.А чувство здравого смысла что говорит? :) Чем поля таблиц отличаются в этом смысле от индексов таблицы, или триггеров таблицы, или табличных ограничений? И если бы вы сейчас проектировали движок с нуля, то как бы вы себе объяснили своё желание сделать имена этих объектов глобально-уникальными? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:04:09 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDee, хорошо задам вопрос так. Что делать с другими типами триггеров. Могу предположить что ты А когда появятся схемы как предполагаешь синтаксис удаления триггера будет выглядеть. И что делать чтобы не запутаться в этом случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:09:48 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Hello, NickDee! You wrote on 3 октября 2013 г. 16:09:38: NickDee> А чувство здравого смысла что говорит? :) займи, но выпей! зы: хочешь изменить вселенную, начни прямо сейчас. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:11:05 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, блин часть предложения стёрлась. Могу предположить что ты скажешь что делать DROP без точки в имени. .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:11:07 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисNickDee, хорошо задам вопрос так. Что делать с другими типами триггеров. Могу предположить что ты А когда появятся схемы как предполагаешь синтаксис удаления триггера будет выглядеть. И что делать чтобы не запутаться в этом случае. Делать нужно исходя из границ видимости объекта. С глобального уровня по имени должны быть доступны только триггеры уровня connect и transaction. А остальные должны быть доступны вот так: ИмяТаблицы.ИмяТриггера Что за проблемы со схемами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:19:36 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDeeююю И если бы вы сейчас проектировали движок с нуля, то как бы вы себе объяснили своё желание сделать имена этих объектов глобально-уникальными? :) "Если бы да кабы, да во рту выросли ... грибы!" :) Движок уже есть и бессмысленно рассуждать на эту тему с подходом "проектировать все с нуля". Куда ты собираешься девать совместимость со старым кодом например? PS: Вот будешь писать свой сервер - сделаешь все как надо! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:21:31 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
DzirtPS: Вот будешь писать свой сервер - сделаешь все как надо! :) Считаете что этот сервер уже неисправим? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:24:37 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDee... Считаете что этот сервер уже неисправим? :) Считаешь, что мои слова по совместимость с существующим кодом можно просто проигнорировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:37:52 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDeeДелать нужно исходя из границ видимости объекта. С глобального уровня по имени должны быть доступны только триггеры уровня connect и transaction. А остальные должны быть доступны вот так: ИмяТаблицы.ИмяТриггера Что за проблемы со схемами? А вместе со схемой вот так ИмяСхемы.ИмяТаблицы.ИмяТриггера. Разве не гемморой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 16:39:11 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
DzirtКуда ты собираешься девать совместимость со старым кодом например? со старым кодом никуда деваться не надо, т.к. там имена триггеров и так уникальны в пределах базы. Другое дело - определенный геморрой при переносе старой базе на "новый" движок, в котором имена объектов были бы уникальны в пределах объекта, и тотальная невозможность вернуться на версию назад. С одной стороны, мысль NickDee вроде здравая, типа, "лень - двигатель прогресса", но что-то есть в ней нехорошее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 17:00:02 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисА вместе со схемой вот так ИмяСхемы.ИмяТаблицы.ИмяТриггера. Разве не гемморой? А как предполагается работать с "type of ИмяСхемы.ИмяТаблицы.ИмяПоля" при определении типов полей? :) В пространстве имён схемы можно обращаться к ИмяТаблицы.ИмяТриггера. В пространстве имён таблицы: просто "ИмяТриггера". А глобально - "ИмяСхемы.ИмяТаблицы.ИмяТриггера". Вы же ведь не рассматриваете вариант сделать имена триггеров таблиц, или индексов в схемах глобально-уникальными? :) Думаю нет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 17:15:13 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
DzirtNickDee... Считаете что этот сервер уже неисправим? :) Считаешь, что мои слова по совместимость с существующим кодом можно просто проигнорировать? Считаете что нужно тянуть концептуальные косяки от версии к версии во имя совместимости? :) Я бы предпочёл стройный, красивый внутри, и развивающийся продукт, с большими степенями свободы по использованию :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 17:40:28 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
NickDeeСчитаете что нужно тянуть концептуальные косяки от версии к версии во имя совместимости? :) Я бы предпочёл стройный, красивый внутри, и развивающийся продукт, с большими степенями свободы по использованию :) И тебе совершенно наплевать, что перестанет работать например IBExpert, IB Data pump, DBComparer, IBAnalist да и вообще ВСЕ сторонние программы, которыми разработчики пользуются каждый день??? Знаешь, мне с тобой точно не по пути, можешь идти своей дорогой куда шел :) Может немного грубо, но совершенно точно отражает смысл. Обратная совместимость - это чуть ли не краеугольный камень в разработке чего угодно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 17:58:09 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
Hello, NickDee! You wrote on 3 октября 2013 г. 18:01:03: NickDeeЯ бы предпочёл стройный, красивый внутри, и развивающийся продукт, с большими степенями свободы по использованию :) ну и ладно. всем вольно. разойдись. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 18:02:23 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
DzirtNickDee... Считаете что этот сервер уже неисправим? :) Считаешь, что мои слова по совместимость с существующим кодом можно просто проигнорировать? Никаких проблем совместимости в прикладном коде не видно. Если только откат на старую версию сервера делать, но этак с чем угодно нарыть можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 18:04:12 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
[quot Dzirt]NickDeeИ тебе совершенно наплевать, что перестанет работать например IBExpert, IB Data pump, DBComparer, IBAnalist... Они и так с новыми версиями серверов не работают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 18:05:51 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
DzirtNickDeeСчитаете что нужно тянуть концептуальные косяки от версии к версии во имя совместимости? :) Я бы предпочёл стройный, красивый внутри, и развивающийся продукт, с большими степенями свободы по использованию :) И тебе совершенно наплевать, что перестанет работать например IBExpert, IB Data pump, DBComparer, IBAnalist да и вообще ВСЕ сторонние программы, которыми разработчики пользуются каждый день??? Знаешь, мне с тобой точно не по пути, можешь идти своей дорогой куда шел :) Может немного грубо, но совершенно точно отражает смысл. Обратная совместимость - это чуть ли не краеугольный камень в разработке чего угодно. Их придётся допиливать под тройку, в любом случае. И такое допиливание происходило каждый раз, от версии к версии, по мере введения новых фич. Вот сечас в тройке тип Boolean появился. Прошлогодний IBExpert его понимает? А DBComparer с IB Data pump? Так что я не вижу тут каких-то проблем, которые не возникали бы раньше :) Чего конкретно вы боитесь в рассматриваемом нами случае? Покажите на конкретном примере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 18:30:36 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
чччД... Они и так с новыми версиями серверов не работают. Ну да, конечно! Не работают... Не понимают тип Boolean? Я не буду его временно использовать, сколько лет без него жили - и ничего. (гипотетически) Не понимают триггеров? А вот это уже совсем не так хорошо. Ты правда не понимаешь разницы или просто решил поприкалываться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 18:34:34 |
|
||
|
глобальная уникальность имён объектов таблицы (индексов, триггеров, ограничений)
|
|||
|---|---|---|---|
|
#18+
DzirtчччД... Они и так с новыми версиями серверов не работают. Ну да, конечно! Не работают... Не работают. Так всегда было. А Delphi 7 не понимает дженериков. Вот такая диалектика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2013, 18:41:51 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=112&tid=1564269]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
17ms |
get forum data: |
2ms |
get page messages: |
73ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 391ms |

| 0 / 0 |
