Это видео недоступно.
Сожалеем об этом.

Основы SQL - #4 - Триггеры

Поделиться
HTML-код
  • Опубликовано: 21 мар 2016
  • Пройди БЕСПЛАТНО профориентацию в IT - bit.ly/2NLILne
    На этом уроке мы рассмотрим понятие триггер в базах данных и как с ним работать (создавать, удалять) в SQLite, MySQL и PostgreSQL.
    Полезные ссылки:
    • www.sqlite.org...
    • dev.mysql.com/...
    • www.postgresql....
    Ссылка на профиль автора вконтакте: sk.avenger
    Не ограничивай себя видеоуроками на RUclips!
    Узнавайте еще больше полезной информации! Общайтесь с опытными разработчиками, преподавателями и развивайся через личное общение!
    Школа онлайн-образования: loftschool.com/
    Telegram: telegram.me/lo...
    Slack: slack.loftblog.ru/
    Сайт: loftblog.ru/
    Instagram: / loftblog
    Группа вконтакте: loftblog
    Facebook: / loftblog
    Twitter: / loft_blog
    Больше уроков от lofblog: #loftblog
    Все уроки по хештегу: #loftblogSQL
    Полезные уроки для веб-программиста: #вебпрограммист
    #SQL
    -----------------------------------------------------------------------------------
    Не забываем, что самый лучший способ сказать "спасибо" - нажать кнопку "нравится" и скинуть ссылку на урок друзьям. Ничто другое так сильно не мотивирует автора продолжать работу :))

Комментарии • 39

  • @Atikan37
    @Atikan37 Месяц назад

    Всё встало на свои места. Теперь я понял триггеры, благодаря вашему видео. Большое спасибо!

  • @sxn2913
    @sxn2913 8 лет назад +11

    очень хорошо объясняется и еще плюс в этом виде рассматривается разные СУБД особенно Postgresql и mysql

  • @pavelsanikovish4445
    @pavelsanikovish4445 7 лет назад +27

    Вот если человек нормально объясняет, то обязательно бросает на середине дела.

  • @dmitryguzeev9008
    @dmitryguzeev9008 8 лет назад +27

    Можете следующий урок по индексам сделать?)
    Давно хотел их понять, темболее думаю другим тоже будет интересно.

  • @romankopylov5013
    @romankopylov5013 3 года назад +3

    Круто! Офигенно! Но...
    Было бы круто если бы вначале ролика было пояснение:
    -"зачем же по истине нужны триггеры?",
    -"как они упрощают (или нет) работу разработчика?".
    А так только краткое описание из доки.

    • @wixovmvoxiw2905
      @wixovmvoxiw2905 9 месяцев назад

      Ответы на эти вопросы сами приходят с опытом) Сижу вот и учу, как сделать триггеры, потому что очень нужны для решения проблемы одной

  • @Aksafan
    @Aksafan 8 лет назад +1

    Побежал пробовать на практике, удобная штука. Спасибо!

  • @user-hh3fm4yb5e
    @user-hh3fm4yb5e 6 лет назад +1

    Большой Вам респект, хорошее дело делаете)

  • @user-hk3vh9pv6i
    @user-hk3vh9pv6i Год назад

    Добрый вечер
    Надеюсь не отвлекаю
    Вопрос что за OS у вас установлена
    Буду рад и благодарен
    Жду ответа

  • @aynismayil4092
    @aynismayil4092 4 года назад

    У выдает ошибку постоянно .У меня MYSql
    delimiter$$
    create trigger new_profile after insert on users for each row
    begin
    insert into profiles(user_id) values (New,ID);
    End$$
    delimiter; выдает такую ошибку
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'end$$
    delimiter$$ -> create trigger new_profile after insert on users for ea' at line 1
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'end$$ delimiter' at line 1

  • @Garikuss
    @Garikuss 4 года назад +4

    сколько всего хочется изучить, а голова всего одна и память не увеличивается :(

    • @vadimdalnoboy
      @vadimdalnoboy 4 года назад

      Так а для чего дана память. Правильно чтобы её развивать!

  • @Anton51538046
    @Anton51538046 6 лет назад

    Друзья, помогите.
    При вставке значения в таблицу users выдается ошибка(сверился с исходниками в уроке - все совпадает):
    ОШИБКА: записи "old" не присвоено значение(на триггере update_user())
    У меня postgresql и windows 10.

  • @lisafox9026
    @lisafox9026 5 лет назад

    вы так хорошо обьясняете , но на ноутбуке очень плохо видно на черном фоне

  • @user-ct7xm2lz8r
    @user-ct7xm2lz8r 6 лет назад

    Решил поэкспериментировать и в MySQL помимо триггеров из урока написал еще такой:
    drop trigger if exists delete_user;
    delimiter $$
    create trigger delete_user after delete on profiles
    for each row
    begin
    delete from users where id = old.user_id;
    end $$
    delimiter ;
    Долго пытался понять, почему выдает ошибку. Кто сообразит?

    • @alissa2232
      @alissa2232 5 лет назад

      3 строка,вместо AFTER должно быть BEFORE

  • @maxlich9139
    @maxlich9139 7 лет назад

    Блин, а у меня при апдейте ошибку пишет:
    loftblog_lesson4=# UPDATE profiles SET name = 'Alex1' WHERE user_id = 1;
    ERROR: record "old" has no field "user_id"
    CONTEXT: SQL statement "UPDATE users SET updated_at = NOW() WHERE id = OLD.user_id"
    PL/pgSQL function update_user() line 3 at SQL statement
    SQL statement "UPDATE users SET updated_at = NOW() WHERE id = OLD.user_id"
    PL/pgSQL function update_user() line 3 at SQL statement

    • @maxlich9139
      @maxlich9139 7 лет назад

      всё разобрался, ошибку сделал, как списывал с экрана, нужно внимательнее списывать.

  • @user-hw5ft5sj2p
    @user-hw5ft5sj2p 8 лет назад +2

    Возможен ли такой вариант, чтобы немножко отклониться от темы и показать, как подключать и работать с Django + PostgreSQL ?

    • @aleksandrskrylev3312
      @aleksandrskrylev3312 8 лет назад

      +Виталий Голубев в хорошую сторону смотрите, но в рамках этого курса я думаю это невозможно, разве что отдельное видео

    • @user-hw5ft5sj2p
      @user-hw5ft5sj2p 8 лет назад +1

      +Alexandr Skrylev Я был бы очень благодарен вам.

  • @wlkmn_1996
    @wlkmn_1996 8 лет назад +2

    Какая у тебя ОС? Классно выглядит!))P.S.: Уроки супер, спасибо.

    • @sashasashovic91
      @sashasashovic91 7 лет назад

      Андрей Воронцов Ubuntu, советую снести Windows и поставить Ubuntu.

    • @wlkmn_1996
      @wlkmn_1996 7 лет назад

      Sasha Sashovic я пользуюсь Ubuntu, просто я не видел такой версии)

    • @fixmedev521
      @fixmedev521 6 лет назад +1

      Ubuntu, оболочка Gnome по моему.

  • @user-cy8uj5qk7i
    @user-cy8uj5qk7i 2 года назад +1

    Надо начинать объяснять не с километровой схемы, а с небольших примеров использования. Смените методику

  • @user-pt3pp4oe9z
    @user-pt3pp4oe9z 7 лет назад

    помогите с журнализацией

  • @tophana
    @tophana 4 года назад +1

    правильно "инстэд", а не инстид, пока не прочитала, думала "чоза?"

  • @xxxxPomaHxxxx
    @xxxxPomaHxxxx 5 лет назад

    Чето имхо лучше отделять данные от кода, и писать все эти триеры в своей какой то модели и её обработчиках уже. Да и вообще кто сейчас пишет sql вручную, лучшая практика это использовать orm, а у них всегда есть какое то хуки эвенты или что то такое как не называй.

    • @densik554
      @densik554 4 года назад +1

      КТО КТО В ВУЗАХ БЛЯТЬ НА ПАРАХ ПИШУТ ЗБС. А ЕЩЕ ЗАНЕШЬ ЧО??? А? А? КУРС АССЕМБЛЕРА БЫЛ. ВОТ ТЕБЕ И ХАРЬКОВСИЙ НАЦИОНАЛЬНЫЙ

  • @quantum-t
    @quantum-t 6 лет назад +1

    "ИНСТЕАД" ?? шта?

  • @BABAYWoTBlitz
    @BABAYWoTBlitz 6 лет назад +2

    А что ето такое и для чого он нужен. Урок бред.

    • @Atikan37
      @Atikan37 Месяц назад

      Автор на примерах показывает для чего нужны триггеры. Конкретно в этом видео на 3 примерах 2-х связанных таблиц по primary key. 3 разных случая требуют одновременного изменения данных сразу во 2-й таблице при изменении, удалении или добавлении данных в 1-й таблице