Mysql Cascade при обновлении не работает должным образом
Я разрабатываю приложение в Java. С помощью этого приложения я хочу хранить данные о студентах и платежах, поэтому я решил создать базу данных с MySQL.
Я создал схему с двумя таблицами(students,payments)
,
students
таблица имеет много столбцов, один из которых называется student_id
и является первичным ключом.
payments
таблица имеет много столбцов, один из которых называется payment_id
(Первичный ключ) и student_id
который является внешним ключом от первичного ключа students
Таблица.
Я установил внешний ключ на cascade
на Update
так что если я обновлю значение в student_id
колонка в students
таблица значение будет автоматически обновляться в столбце student_id
в payments
Таблица. Проблема в том, что когда я меняю значение в строке на student_id
колонка в students
В таблице видно, что изменения были применены с помощью запроса выбора (SELECT * FROM студентов) в students
Таблица. Но когда я выполняю запрос выбора (SELECT * FROM платежи) в payments
Из таблицы видно, что изменения не были применены в столбце students_id
, Обратите внимание, что autocommit
включен. Только когда я совершаю select
исполнение на payments
Таблица покажет правильные результаты (обновленная строка).