Я хотел бы знать, возможно ли в InnoDB в MySQL
иметь table
с внешним ключом, который ссылается на другую таблицу в другом database
?
И если да, то как это можно сделать?
Я хотел бы знать, возможно ли в InnoDB в MySQL
иметь table
с внешним ключом, который ссылается на другую таблицу в другом database
?
И если да, то как это можно сделать?
Я не вижу никаких ограничений на https://dev.mysql.com/doc/refman/8.0/en/create-table-foreign-keys.html.
Так что просто используйте otherdb.othertable, и все будет хорошо.
ALTER TABLE my_table ENGINE = InnoDB;
работало для MariaDB 10.1.16.
- person iloo; 20.12.2017
Это возможно: Ссылка для этого
Пример (Table1 находится в базе данных1, а HelloTable — в базе данных2):
ALTER TABLE Table1
ADD foreign key FK_table1(ColumnNameFromTable1)
REFERENCES db2.HelloTable(ColumnNameFromHelloTable)
Ниже описано, как добавить внешний ключ в таблицу t2, ссылка из таблицы db1.historial(codh):
alter table t2
add foreign key FK_t2(micod2)
references db1.historial(codh)
on delete cascade
on update cascade;