![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поддержка ссылочной целосности [MSSQL2000]
Term © (2004-09-29 12:09:00)Как лучше сделать контроль ссылочной целостности
с помошью тригеров или
внешних ключей, почему спрашиваю тут мне сказали что задание RELATIONSHIPS типа не столь надёжно
вот и вкрались сомнения
Fay (2004-09-30 04:59:00) [21]2 Johnmen © (29.09.04 23:01) [31]
Мне просто показалось, что имеет место наезд на мою любимую СУБД. Причём со стороны FB, с которым я работаю почти каждый день и люто его ненавижу за тормоза, глюки и "недоношенное" всё ваще.
>> Пожалуйста поподробней. С конкретным примером.
Я не полезу сейчас искать описания багов. Но указанную (во что она выливается) ошибку "исправляют" в каждом релизе.
Petr V. Abramov (2004-09-30 00:03:00) [22]dont`t use triggers to implement features, built-in Oracle database.
(C) Oracle Concepts
Цитата может быть не дословной, и даже ваще не про MSSSQL, но, IMHO, прочтя, имеет смысл задуматься.
Johnmen (2004-09-29 23:01:00) [23]>vuk © (29.09.04 18:38) [26]
Просто мне показалось, что обмен мнениями скатывается к http://www.delphimaster.ru/cgi-bin/forum.pl?id=1096463530&n=3
а это абсолютно бессмысленно...Поэтому "кулик" отменяется :)))
Про серьёзные проблемы не скажу, не сталкивался с ними.
>Fay © (29.09.04 20:09) [27]
>А ошибки в IB/FB, приводящие к тому, что left join выполняется
>как inner join, считаются смешными?
Пожалуйста поподробней. С конкретным примером.
>Имеется ввиду "тормозит одинаково"?
Имеется в виду то, что сказано, дословно, без иносказаний и подразумеваний...
YurikGL (2004-09-29 20:48:00) [24]
> Fay © (29.09.04 20:45) [29]
Можно и так :-) Я собственно и связи один ко многим с помощью триггеров всегда делал. ИМХО проще гораздо. Вызываешь свои ексепшены если надо... Да и вообще гибче и удобнее.
Fay (2004-09-29 20:45:00) [25]2 YurikGL © (29.09.04 20:29) [28]
Если считать СЦ бизнес-правилами, то почему бы и нет? 8)
YurikGL (2004-09-29 20:29:00) [26]Всегда реализую СЦ с помощью триггеров.
Fay (2004-09-29 20:09:00) [27]2 Term (29.09.04 12:09)
Если Вы знаете чем отличается constraint от триггера, то вопрос должен быть Вам очевиден. Мне так кажется 8)
2 Johnmen © (29.09.04 18:01) [23]
А ошибки в IB/FB, приводящие к тому, что left join выполняется как inner join, считаются смешными?
>> А я не замечаю - IB/FB.
Имеется ввиду "тормозит одинаково"?
vuk (2004-09-29 18:38:00) [28]to Johnmen © (29.09.04 18:27) [25]:
>И если в Оракле есть и такие и другие триггеры, то это понятно
>и осязаемо.
Согласен.
>В своё время писал на 0. Триггеров не было.
Может быть. Я имел дело с 6.5
>Нереализованность containing.
Это часть стандарта SQL?
>А вообще я уже жалею, что дал себя втянуть в бессмысленный
>обмен постами.
Я спросил не из желания защищать MSSQL. Мне действительно интересно. Возможно я не вижу каких-то серьезных проблем. А вдруг мне глаза откроют? :o)
>"Каждый кулик..." (c)
У нас и IB используется в некоторых количествах. Так что про кулика - это малость не по делу. :o)
Johnmen (2004-09-29 18:27:00) [29]>vuk © (29.09.04 18:09) [24]
1. Да дело-то не в этом. Дело в удобном и понятном разрешении проблем. И если в Оракле есть и такие и другие триггеры, то это понятно и осязаемо.
2.
>В свое время писал на 6.x. Триггеры там были.
Здесь, возможно, дело в x.
В своё время писал на 0. Триггеров не было.
Мои бывшие коллеги, писавшие на 5, тоже их не обнаружили...:)
3.
>Ага. :o)
Нереализованность containing. Возражения типа "там это через встроенную ф-ию contains" меня не пробивают.
А вообще я уже жалею, что дал себя втянуть в бессмысленный обмен постами. Я сам дурак...
"Каждый кулик..." (c)
vuk (2004-09-29 18:09:00) [30]to Johnmen © (29.09.04 18:01) [23]:
>Одна из них описана в [12].
Это просто другой стиль работы с данными. Тому, кто работал только с IB это несколько непривычно, есть такое дело. Но, тем не менее, не вижу неразрешимых проблем при таком подходе к реализации триггеров. Или я не умею их (проблемы) готовить?
>А нереализованность триггеров вообще до версии 7 вызывает как
>минимум недоумение.
В свое время писал на 6.x. Триггеры там были.
>Ещё ?
Ага. :o)
Johnmen (2004-09-29 18:01:00) [31]>vuk © (29.09.04 17:51) [21]
Одна из них описана в [12]. А нереализованность триггеров вообще до версии 7 вызывает как минимум недоумение. С улыбкой на лице у сдержанного человека и со смехом у несдержанного.
Ещё ?
:)
Nikolay M. (2004-09-29 17:55:00) [32]
> Плюсы констрейнтов - они надежнее, потому что они не пишутся
> программистом.
Лично я за последние 4 года написал максимум десяток тригеров, отвечающих за поддержку СЦ, хотя все базы держались именно на тригерах. Получается, мои тригеры - надежные? :)
vuk (2004-09-29 17:51:00) [33]to Johnmen © (29.09.04 17:47) [20]:
>Будет, если конкретно поставишь вопрос...:)
Ставлю. Где конкретно у MSSQL смешные проблемы, упомянутые в [11]?
Johnmen (2004-09-29 17:47:00) [34]>vuk © (29.09.04 17:45) [18]
Будет, если конкретно поставишь вопрос...:)
Johnmen (2004-09-29 17:46:00) [35]>KSergey © (29.09.04 17:36) [17]
>Но работает шустрее.
Работает шустрее, чем что ?
vuk (2004-09-29 17:45:00) [36]to Johnmen © (29.09.04 17:18) [16]:
>На личном опыте и опыте окружающих.
А конкретики так и не будет? Интересно же...
KSergey (2004-09-29 17:36:00) [37]> [14] Johnmen © (29.09.04 15:53)
> >KSergey © (29.09.04 15:48) [13]
> >Применительно к MS SQL основная фраза.
> А в чем оптимизация ?
Откуда мне знать? Но работает шустрее. Хотя, корректным и аккуратным тестированием не занимался.
Johnmen (2004-09-29 17:18:00) [38]>vuk © (29.09.04 17:00) [15]
На личном опыте и опыте окружающих.
vuk (2004-09-29 17:00:00) [39]to Johnmen © (29.09.04 14:32) [11]:
>Но давно уверен, что у MSSQL много смешных проблем...:)
На чем уверенность основана, поконкретнее можно?
Johnmen (2004-09-29 15:53:00) [40]>АлексейК (29.09.04 14:50) [12]
>А вот работа внешних ключей оптимизирована очень неплохо.
А с чем ты сравниваешь ? Со смешными триггерами ? Так это сравнение некорректно, т.к. суть разные дела...
>KSergey © (29.09.04 15:48) [13]
>Применительно к MS SQL основная фраза.
А в чем оптимизация ?
Шутку поняли...:)