172 похожих чатов

Привет, подскажите каким образом можно сделать nullable foreign key? У меня

есть таблица Elements с полем StateId, которая должна ссылаться на таблицу States с отношением один-к-одному. Но эти данные не всегда могут быть, так как их вычисляет другой сервис, спустя какое-то время после того, как таблица Elements заполнится.
На тестовый INSERT падает с ошибкой `ERROR: ОШИБКА: значение NULL в столбце "StateID" отношения "Elements" нарушает ограничение NOT NULL
DETAIL: Ошибочная строка содержит (0, 0, wall, 1234, null, null).
SQL state: 23502`
Ничего толкового не нагуглить не удалось

11 ответов

17 просмотров

Может это https://stackoverflow.com/questions/45442536/postgresql-include-optional-nullable-foreign-key ?

trane254- Автор вопроса
Дмитрий
Может это https://stackoverflow.com/questions/4544...

Находил это, там у парня в этом примере с тем же самым падает, если перейти по SQL DEMO

trane254
Находил это, там у парня в этом примере с тем же с...

Оно работает. Вы пример внимательно прочитайте.

Вообще в ошибке же конкретно написано: в столбце "StateID" отношения "Elements" нарушает ограничение NOT NULL

trane254- Автор вопроса
Дмитрий
Вообще в ошибке же конкретно написано: в столбце "...

Вот код, вроде как там не стоит NOT NULL в таблице Elements

trane254
Вот код, вроде как там не стоит NOT NULL в таблице...

В смысле ? )) CREATE TABLE "Elements" ( "Id" serial NOT NULL, ... ALTER TABLE "Elements" ADD CONSTRAINT "Elements_fk0" FOREIGN KEY ("FileID") REFERENCES "Files"("Id"); ALTER TABLE "Elements" ADD CONSTRAINT "Elements_fk1" FOREIGN KEY ("StateID") REFERENCES "States"("Id"); ALTER TABLE "Elements" ADD CONSTRAINT "Elements_fk2" FOREIGN KEY ("BuildingTimeID") REFERENCES "BuildingTimes"("Id"); ALTER TABLE "Parameters" ADD CONSTRAINT "Parameters_fk0" FOREIGN KEY ("ElementId") REFERENCES "Elements"("Id");

trane254- Автор вопроса
Дмитрий
screenshot Это такая шутка ?))

так он падает когда я ставлю через: INSERT INTO "Elements"( "Id", "FileID", "Name", "RvtId", "StateID", "BuildingTimeID") VALUES (0, 0, 'wall', 1234, null, null);

trane254
так он падает когда я ставлю через: INSERT INTO "E...

Ну так по столбцам рекомендую посмотреть что Вы делаете.

trane254- Автор вопроса
Дмитрий
Ну так по столбцам рекомендую посмотреть что Вы де...

Все еще не понимаю, что не так. Типа, в foreign key ставлю нуллы, которые должны поддерживаться, но падает сразу на первом же StateId. Если тут что-то очень простое, то палкой сильно не бейте, ооочень давно не работал с базами

trane254
Все еще не понимаю, что не так. Типа, в foreign ke...

http://mech.math.msu.su/~shvetz/54/inf/databases/chSerial.xhtml

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
70
Здравствуйте. Задача состоит в том, чтобы сделать real-time чат в мобильном приложении. После передачи сообщения пользователем через веб-сокеты, для основного и долговременног...
🐾
5
Всем доброго дня, ребят подскажите пожалуйста, если в курсе по ассемблеру используется MASM32, могу ли я использовать FASM? В чем явная разница и будет ли у меня все работать?
Botsman
17
падает джоба хотя уже была собрана на соседнем namespace, куда капать? │ │ Copying blob sha256:2fa066caddb8f09a71082b03aa43046f79346a01d9c89e06a1f508bb1207dba5 427 │ │ Copyin...
Andrei St
1
Хотел бы спросить у знающих, правильную ли я выбрал книгу для начала изучения ассемблера Юрова В.И ? Или есть более лучшие книги для начала обучения?
Botsman
25
Книга Юрова В.И пойдёт для обучения?
Botsman
24
$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
Люди добрые, помогите с идеями, потому что свои закончились. У клиента падает софтина в момент инициализации модуля OtlEventMonitor на RegisterWindowMessage('Gp/OtlTaskEvents/...
Михаил Усков
7
Тут просто дело в том, что я не могу сейчас дать такие подробности из за того что рассчитать это всё нереально. Этого проекта который я хочу сделать ещё даже не существует) И ...
🐾
8
> Примечательно, что новый владелец удаляет из GitHub любые жалобы, указывающие на подозрительную активность или смену владельца, и, видимо, рассчитывает на то, что пользовате...
Alex Sherbakov
2
Карта сайта