Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
Добрый день, нужно написать триггер: В таблице grave при a. при Insert срабатывает триггер, который вычисляет сколько осталось места на кладбище, если могила занимает больше места чем осталось на кладбище, то могила будет создана на кладбище, где есть место. подскажите, как вообще реализован поиск по записям в таблице, и как выбрать только одну запись и внутри нее что-то менять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2019, 18:00 |
|
||
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
Перехватываете INSERT (триггер INSTEAD OF), пишете свою логику. Разбейте задачу на части, пишите каждые части в отдельности, потом склеете всё в один триггер... В общем-то как и решается любая другая задача. Для начала напишите запрос, который вычисляет сколько осталось места на кладбище... Так сказать начните! Потом ещё одну какую-то мелочь... Поиск - это WHERE (ещё есть HAVING). Изменить запись - UPDATE. Вставить - INSERT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2019, 18:33 |
|
||
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
sqlfool, довольно сложная задача для начинающего. Если Вы добрались до триггеров, то должны изучить понятие запросов, их разновидностей, принципов организации хранения реляционных данных, понятие типа данных, понятие транзакции и так далее. Но, судя по вопросам, Вы "плаваете" в материале. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2019, 13:12 |
|
||
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
Владислав Колосов, Эх, так оно и есть. В универе это вторая лаба, то есть до этого мы только создавали таблички, вставляли в них данные и все. Написал что-то, но оно не работает. Посмотрите? Только сильно не стоит пугаться, это мой первый триггер так сказать. Код: sql 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. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2019, 17:35 |
|
||
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
sqlfool, Это ужасно, выкидывайте и больше никому не показывайте. Во-первых, в триггере доступны виртуальные таблицы inserted / deleted, через которые можно получить доступ к модифицированным операцией записям. Во-вторых, забудьте про циклы. Все далается парой команд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2019, 17:42 |
|
||
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
sqlfool, триггер после выполнения срабатывает, когда произошли изменения всех строк в запросе. То есть в поле зрения триггера попадает не одна строка, а сразу весь объём строк. Присваивая значения переменным, Вы можете потерять информацию. Для получения доступа к старым значениям служит, как уже писали, таблица под именем deleted, к новым значениям - inserted. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2019, 18:03 |
|
||
|
Написание триггера.
|
|||
|---|---|---|---|
|
#18+
Гавриленко Сергей АлексеевичЭто ужасно, выкидывайте и больше никому не показывайте. Это не так страшно. Я видел намного страшнее sqlfool, sql - это декларативный язык. Ему не нужно алгоритм писать. Поэтому циклы и курсоры используют только в самых крайних ситуациях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2019, 21:55 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39879274&tid=1687094]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
120ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 444ms |

| 0 / 0 |
