|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Большая просьба ! Если кто-нить где-нить видел толковое описание работы с триггерами в PostgreSQL (предпочтительно на русском), очень огромное пожалуйста пробросьте URL. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2003, 15:15 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
На примитивном уровне примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2003, 17:50 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Огромное спасибо за уделенное внимание моей проблеме, но на самом деле она у меня глубже чем могло показаться. Я для того и просил описание потому как я в этом новичок и пока мне не ясен механизм работы - триггер - функция. А точнее можно ли внутри функции использовать select, insert, update других таблиц ? На сколько силен математический апарат в этих функциях и что он умеет ? Я понимаю, что это вопросы по синтаксису языка используемого внутри функций, но если не затруднит ответ на такие вопросы буду очень признателен. Если нет описания вышеупомянутых вещей, то не мог бы кто-нибудь дать простой примерчик, когда внутри функции беруться данные из разных таблиц, сравниваются и, в зависимости от сравнения заносяться/не заносяться в некую следующую таблицу. Зарание огромное спасибо...... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 13:40 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Вот пример того, как на триггерах можно построить гостевую книгу, в которой в статистике пользователя есть количество его сообщений. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 15:36 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
В прошлом посте ошибка: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 15:38 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Огромное спасибо за этот пример. Но, если не затруднит, не могли бы немного его дополнить. Допустим в таблице users еще существует поле member - флаг, принимающий значение 0 - не зарегистрированный пользователь 1- зарегистрированный. И если пользователь зарегистрирован, то количество его сообщений считается, если не зарегистрирован, то нет. Может в плане права на жизнь это не очень удачный пример, но интересует в нем следующее: Есть ли в синтаксисе, используемом в функциях аналог if then else ? Можно ли внутри функции результат select-а сравнить с некой величиной и в зависимости от этого сделать update или не делать оного ? Да и есть ли возможность как-нибудь отпарсить данные, таким образом, что бы сравнить часть строки NEW.имя столбца с частью строки полученной в результате select-а из какой-то таблицы и по результату произвести то или иное действие ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 16:16 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 16:40 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Еще раз огромное спасибо, теперь я смогу чего-нить да придумать. Если опять зайду в тупик, обращусь за помощью. Да, если не секрет, откуда все это узнаеться опытными людьми? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 17:21 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
http://www.postgresql.org/docs/pdf/7.3/admin-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/catalogs-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/connections-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/developer-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/programmer-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/reference-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/tutorial-7.3.2-A4.pdf http://www.postgresql.org/docs/pdf/7.3/user-7.3.2-A4.pdf ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2003, 17:30 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Вопрос to Stellar: А зачем Вы в триггере After Delete возвращаете OLD? Насколько я понимаю, возвращаемое значение актуально только для триггеров Before, где возврат NULL отменяет соответствующее действие, или я не прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2003, 00:38 |
|
Описание работы с триггерами
|
|||
---|---|---|---|
#18+
Вопрос to Stellar: >А зачем Вы в триггере After Delete возвращаете OLD? Насколько я понимаю, >возвращаемое значение актуально только для триггеров Before, где возврат >NULL отменяет соответствующее действие, или я не прав? Любая процедура в PostgreSQL должна возвращать некое значение. Поэтому можно вернуть и NULL и OLD - разницы никакой. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2003, 10:10 |
|
|
start [/forum/topic.php?fid=53&gotonew=1&tid=2008065]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
11ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 189ms |
0 / 0 |