Logo
TGCATALOG
Каталог Подборки Блог
Data analysis - DA SQL

Data analysis - DA SQL

Анализ данных: SQL, Python.

Нет оценок
582
29.10.2026
582
29.10.2026
Нет оценок
582
29.10.2026
Безопасный переход через бот
О канале

Анализ данных: SQL, Python.

Подписчиков 1,700
Тематика Технологии
Язык Русский
Ссылка t.me/business_stats

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.

Описание

Про анализ данных: базы данных, SQL, Python и другое для аналитиков.

Последние посты

Data analysis - DA SQL
Data analysis - DA SQL
🔒Открыть пост
и посмотреть медиа
Триггеры в SQL Триггеры похожи на специальные хранимые процедуры, которые автоматически выполняются при наступлении определенных событий в базе данных. Могут срабатывать перед, после или вместо выполнения операции. Как и хранимая процедура, триггер хранится в базе данных и может вызываться многократно. Но при этом, в отличие от хранимой процедуры, триггер можно включать и отключать, но нельзя вызывать его явным образом. Можно задать триггеры, которые будут срабатывать при изменении данных (INSERT, UPDATE, DELETE), а также при изменении структуры БД и при возникновении системных событий. Общий вид запроса на создание триггеров: CREATE [OR REPLACE] TRIGGER trigger_name {BEFORE | AFTER | INSTEAD OF} {INSERT | UPDATE | DELETE} ON table_name [FOR EACH ROW] [WHEN (condition)] DECLARE -- объявление переменных BEGIN -- тело триггера EXCEPTION -- обработка исключений END; Посмотреть созданные триггеры можно в таблице user_triggers (подробнее про метаданные). Важная особенность триггеров - их нельзя создавать на объектах, принадлежащих SYS. Для этого нужно переключиться на менее значимое табличное пространство, например, через другого пользователя, у которого должно быть право на создание триггеров. Пример создания: CREATE OR REPLACE TRIGGER C##username.trg_check BEFORE INSERT OR UPDATE ON C##username.table FOR EACH ROW BEGIN IF :new.amount < 100 THEN RAISE_APPLICATION_ERROR(-20001, 'Маленькое значение'); END IF; END; Этот триггер создается в контексте отдельного пользователя (username), не затрагивая пространство SYS. Он действует перед вставкой или обновлением значений в таблице и предназначен для проверки поля amount (amount < 100) в таблице table. Иными словами, если мы захотим вставить в поле amount значение меньше 100, то сработает триггер и не даст нам этого сделать. 🟠Еще один пример триггера. На этот раз он запрещает пользователю удаление таблиц: CREATE OR REPLACE TRIGGER C##username.trg_prevent_table_drop BEFORE DROP ON SCHEMA BEGIN IF ORA_DICT_OBJ_TYPE = 'TABLE' THEN RAISE_APPLICATION_ERROR(-20000, 'Удаление таблиц запрещено!'); END IF; END; Теперь при любом запросе по типу DROP TABLE table_name будет срабатывать триггер и специально вызывать ошибку. Отключить/включить триггеры можно так: ALTER TRIGGER trg_name DISABLE --или ENABLE, чтоб включить Проверить, включен ли триггер или нет, можно все в той же таблице user_triggers.
Data analysis - DA SQL
Динамика подписчиков
+-0.5% за 30 дней
Текущие
1,700
Месяц назад
1,709
Средний рост
+0 / день
Обновлено
19 часов назад

Отзывы о канале Data analysis - DA SQL

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Loading
Переход на светлую тему
Главная Каталог Подборки Блог Вход