Stačí povolit sloupec university_id
tabulky user
povolit NULL
hodnotu, abyste mohli uložit null .
CREATE TABLE user
(
uid INT NOT NULL,
Name VARCHAR(30) NOT NULL,
university_ID INT NULL, -- <<== this will allow field to accept NULL
CONSTRAINT user_fk FOREIGN KEY (university_ID)
REFERENCES university(university_ID)
)
AKTUALIZACE 1
na základě vašeho komentáře byste měli vkládat NULL
a ne ''
.
insert into user (name,university_id) values ('harjeet', NULL)
AKTUALIZACE 2
$university_id = !empty($university_id) ? "'$university_id'" : "NULL";
insert into user (name,university_id) values ('harjeet', $university_id);
Vedlejší poznámkou je, že dotaz je zranitelný pomocí SQL Injection
pokud je hodnota (s ) proměnných pochází zvenčí. Podívejte se prosím na níže uvedený článek, kde se dozvíte, jak tomu zabránit. Pomocí PreparedStatements
můžete se zbavit používání jednoduchých uvozovek kolem hodnot.