Найдено результатов: 5

Вызов ошибки в триггере MySQL

Если у меня есть trigger before the update на таблице, как я могу бросить ошибку, которая предотвращает обновление на этой таблице?

mysql   database   triggers    

1087   6   16:03, 1st July, 2020


Какой язык вы используете для PostgreSQL триггеров и хранимых процедур?

PostgreSQL интересен тем, что он поддерживает несколько языков для написания хранимых процедур. Какой из них вы используете, и почему?

sql   database   postgresql   stored-procedures   triggers    

555   9   16:03, 1st July, 2020


Построение системы аудита; MS Access frontend на сервере SQL backend

Поэтому в основном я создаю приложение для своей компании, и оно NEEDS должно быть построено с использованием MS Access, и оно должно быть построено на сервере SQL.

Я составил большинство планов, но мне трудно понять, как справиться с системой аудита.

Поскольку он используется только внутри, и вы даже не сможете коснуться БД снаружи здания, мы не используем систему входа в систему, поскольку программа будет использоваться только после того, как пользователь уже вошел в нашу внутреннюю сеть через Active Directory. Зная это, мы используем систему для автоматического определения имени пользователя Active Directory и их разрешений в одной из таблиц DB, решая, что они могут или не могут делать.

Таким образом, фактическая таблица аудита будет иметь 3 столбца (этот дизайн может измениться, но для этого вопроса это не имеет значения); кто (пользователь Active Directory), когда (время addition/deletion/edit), что (что было изменено)

Мой вопрос в том, как я должен справиться с этим. В идеале я знаю, что должен использовать триггер, чтобы база данных не обновлялась без регистрации аудита, однако я не знаю, как я мог бы захватить пользователя Active Directory таким образом. Альтернативой было бы закодировать его непосредственно в источнике доступа, чтобы всякий раз, когда что-то меняется, я запускал оператор INSERT. Очевидно, что это неправильно, потому что если что-то происходит с доступом или база данных затронута чем-то другим, то она не будет регистрировать аудит.

Любые советы, примеры или статьи, которые могут мне помочь, будут очень признательны!

sql   sql-server   ms-access   triggers    

533   11   20:35, 25th August, 2020


Триггеры базы данных

В прошлом я никогда не был поклонником использования триггеров в таблицах базы данных. Для меня они всегда представляли собой некий "magic", который должен был произойти на стороне базы данных, далеко - далеко от контроля моего кода приложения. Я также хотел ограничить объем работы, которую должен был выполнять DB, поскольку это обычно общий ресурс, и я всегда предполагал, что триггеры могут быть дорогостоящими в сценариях с высокой нагрузкой.

Тем не менее, я нашел несколько примеров, когда триггеры имели смысл использовать (по крайней мере, на мой взгляд, они имели смысл). Однако недавно я оказался в ситуации, когда мне иногда может понадобиться "bypass" спусковой крючок. Я чувствовал себя очень виноватым из-за необходимости искать способы сделать это, и я все еще думаю, что лучший дизайн базы данных облегчил бы необходимость этого обхода. К сожалению, этот DB используется несколькими приложениями, некоторые из которых поддерживаются очень несговорчивой командой разработчиков, которая кричала бы об изменениях схемы, поэтому я застрял.

Что там за общий консесус насчет триггеров? Любишь их? Ненавидеть их? Думаете, они служат какой-то цели в некоторых сценариях? Считаете ли вы, что необходимость обойти триггер означает, что вы "делаете это неправильно"?

sql-server   database-design   triggers    

583   12   03:36, 23rd August, 2020


Триггер без транзакции?

Можно ли создать триггер, который не будет в транзакции?

Я хочу обновить данные на связанном сервере с помощью триггера, но из-за проблем с брандмауэром мы не можем создать распределенную транзакцию между двумя серверами.

sql-server   tsql   triggers    

396   2   03:16, 19th August, 2020