Как вставить нулевое значение в столбец внешнего ключа - PullRequest
0 голосов
/ 04 июня 2010

У меня есть две таблицы x и y. x имеет один столбец PK, а y имеет ограничение FK таблицы x (со значением NULL). Мне нужно вставить нулевые значения в таблицу y, передав нулевое значение. Возможно ли это в NHibernate?

Я попытался передать нулевое значение, но оно выдает ошибку ограничения FK.

Ответы [ 3 ]

0 голосов
/ 04 июня 2010

Если на столе человека есть таблица mobilePhone для телефона, вполне допустимо, чтобы поле mobilePhone было пустым, если у человека нет мобильного телефона. Однако вам не нужно вставлять телефонную запись с нулевым первичным ключом. Это было бы недействительным.

0 голосов
/ 11 мая 2012

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

0 голосов
/ 04 июня 2010

Если вы хотите получить конкретный ответ о том, как делать то, что вы просите, вам нужно предоставить больше информации об используемых вами инструментах. Какая система баз данных? какой язык программирования?

Однако я думаю, что у вас есть большая проблема, чем как вставить ноль. Несмотря на то, что это FK, это все еще ключ. Для ссылочной целостности должен быть PK, который соответствует в другой таблице. Это означает, что где-то должен быть и ПК с нулем, что никогда не следует делать в хорошем дизайне базы данных. Если это вообще возможно, посмотрите на лучший дизайн таблиц базы данных, который не требует использования нулевых ключей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...