|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Alexander Gotlib 2:5080/1003 08 Aug 2003 17:20:50 To : Vladimir Pavlikov Subject : Re: PostgreSQL vs Interbase --------------------------------------------------------------------------------
Hail there Vladimir!
Thu, 07 Aug 2003 at 11:10 GMT Vladimir Pavlikov wrote:
AG>> Я вполне четко сформулировал свои претензии к PG про IB я молчал.
AG>> Читай внимательнее в следующий раз.
VP> Вынужден извиниться. Подвел частичный квотинг :(
VP> ЗЫ. Речь все же не о передергивании, а о ошибке.
Да ладно, ерунда. :-)
Если не трудно, опиши плз, как будет в PL/IB выглядеть
следующее.
Имеем две таблицы. Первая - usr (usr int, infsrc int, ...), где
usr pk, infsrc fk. Вторая - infsrc (infsrc int, ...), где infsrc pk.
Для сохранения целостности данный имеем констрейнт системы, что нельзя
удалять запись из таблицы usr, если в таблице infsrc имеется запись с
аналогичным infsrc.
Требуется написать процедуру для удаления записей из таблицы
usr. Т.е. процедура должна либо удалить запись и вернуть код возврата
типа "Цер Гуд", либо вернуть код возврата типа "Ахтунг", если удаление
невозможно из-за срабатывания констрейнта.
В PL/PG это, судя по всему, можно реализовать только
предварительной проверкой полей infsrc. Что, как мне думается, не
совсем правильно. Я, конечно, понимаю, что данный пример совсем
примитивный и по сути пофиг, как этот констрейнт обрабатывать. Hо
бывают и гораздо более запутанные случаи...
Или я чего-то по-крупному не понимаю? :-)
--
WBR, Alexander B. Gotlib,
mailto:alex@cca.usart.ru / ICQ# 13043204.
-|- -|-
--- ifmail v.2.15dev5
* Origin: CIA USURT (2:5080/1003@fidonet)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/146466288f07a.html, оценка из 5, голосов 10
|