Вопросы с тегом «foreign-keys»

Внешние ключи - это функция целостности данных реляционных (и SQL) баз данных. Внешний ключ - это набор атрибутов в реляционной таблице, на который распространяется ограничение ссылочной целостности. Ограничение ссылочной целостности требует, чтобы значения атрибутов внешнего ключа в одной таблице A соответствовали соответствующим значениям в некоторой указанной таблице B (которая иногда может совпадать с таблицей A).

648
Как урезать таблицу с внешним ключом?

Почему не TRUNCATE на mygroupработе? Даже если у меня есть, ON DELETE CASCADE SETя получаю: ОШИБКА 1701 (42000): Невозможно обрезать таблицу, на которую ссылается ограничение внешнего ключа ( mytest. instance, CONSTRAINT instance_ibfk_1FOREIGN KEY ( GroupID) ССЫЛКИ mytest. mygroup( ID)) drop...

459
Не удается усечь таблицу, потому что на нее ссылается ограничение FOREIGN KEY?

Используя MSSQL2005, можно ли обрезать таблицу с ограничением внешнего ключа, если я сначала усекаю дочернюю таблицу (таблицу с первичным ключом отношения FK)? Я знаю, что я могу либо Используйте DELETEбез условия where, а затем RESEEDличность (или) Удалите FK, обрежьте таблицу и воссоздайте FK. Я...

420
Когда использовать «ОБНОВЛЕНИЕ КАСКАДА»

Я регулярно использую «ON DELETE CASCADE», но никогда не пользуюсь «ON UPDATE CASCADE», так как не уверен, в какой ситуации это будет полезно. Ради обсуждения, давайте посмотрим код. CREATE TABLE parent ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id) ); CREATE TABLE child ( id INT NOT NULL...

336
Ошибка MySQL 1215: невозможно добавить ограничение внешнего ключа

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

325
Может ли внешний ключ быть пустым и / или дублированным?

Пожалуйста, уточните две вещи для меня: Может ли внешний ключ быть пустым? Может ли внешний ключ быть дублированным? Насколько я знаю, NULLего нельзя использовать во внешних ключах, но в некоторых моих приложениях я могу вводить данные NULLкак в Oracle, так и в SQL Server, и не знаю...

324
Добавить внешний ключ в существующую таблицу

Я хочу добавить внешний ключ в таблицу под названием "katalog". ALTER TABLE katalog ADD CONSTRAINT `fk_katalog_sprache` FOREIGN KEY (`Sprache`) REFERENCES `Sprache` (`ID`) ON DELETE SET NULL ON UPDATE SET NULL; Когда я пытаюсь сделать это, я получаю это сообщение об ошибке: Error Code: 1005. Can't...

323
Как выбрать строки без соответствующей записи в другой таблице?

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

314
MySQL не может добавить ограничение внешнего ключа

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

295
Введение ограничения FOREIGN KEY может вызвать циклы или несколько каскадных путей - почему?

Я боролся с этим некоторое время и не могу понять, что происходит. У меня есть сущность Карты, которая содержит Стороны (обычно 2), и у обеих карт и Сторон есть Сцена. Я использую EF Codefirst миграции, и миграции завершаются с ошибкой: Введение ограничения FOREIGN KEY...

272
Как найти все таблицы, которые имеют внешние ключи, которые ссылаются на определенный table.column и имеют значения для этих внешних ключей?

У меня есть таблица, первичный ключ которой упоминается в нескольких других таблицах как внешний ключ. Например: CREATE TABLE `X` ( `X_id` int NOT NULL auto_increment, `name` varchar(255) NOT NULL, PRIMARY KEY (`X_id`) ) CREATE TABLE `Y` ( `Y_id` int(11) NOT NULL auto_increment, `name` varchar(255)...

259
Что не так с внешними ключами?

Я помню, как Джоэл Спольски упоминал в подкасте 014, что он почти никогда не использовал внешний ключ (если я правильно помню). Однако мне кажется, что они очень важны, чтобы избежать дублирования и последующих проблем с целостностью данных в вашей базе данных. Есть ли у людей веские причины для...

252
Как удалить ограничения из моей таблицы MySQL?

Я хочу удалить ограничения из моей таблицы. Мой запрос: ALTER TABLE `tbl_magazine_issue` DROP CONSTRAINT `FK_tbl_magazine_issue_mst_users` Но я получил ошибку: #1064- у вас есть ошибка в вашем синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного...

237
Mysql ошибка 1452 - Не удается добавить или обновить дочернюю строку: ограничение внешнего ключа не удается

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

235
Могут ли столбцы таблицы с внешним ключом быть NULL?

У меня есть таблица, которая имеет несколько столбцов ID для других таблиц. Я хочу , чтобы внешний ключ к целостности силы только если я помещаю туда данные. Если позднее я выполню обновление, чтобы заполнить этот столбец, он также должен проверить ограничение. (Вероятно, это зависит от сервера...

225
Оператор INSERT конфликтует с ограничением FOREIGN KEY - SQL Server

Я получаю следующую ошибку. Не могли бы вы мне помочь? Сообщение 547, уровень 16, состояние 0, строка 1 Оператор INSERT конфликтует с ограничением FOREIGN KEY "FK_Sup_Item_Sup_Item_Cat". Конфликт произошел в базе данных "dev_bo", таблица "dbo.Sup_Item_Cat". Заявление было прекращено. Код: insert...

224
Команда Показать ограничения на таблицы

У меня есть таблицы, на которых я пытался установить отношения PK FK, но я хочу это проверить. Как я могу показать ограничения PK / FK? Я видел эту страницу руководства, но она не показывает примеры, и мой поиск в Google также оказался бесплодным. Моя база данных credentialing1и мои ограниченные...