Lassen Sie einfach die Spalte university_id
zu der Tabelle user
um NULL
zuzulassen Wert, damit Sie Nullwerte speichern können .
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)
)
AKTUALISIERUNG 1
Basierend auf Ihrem Kommentar sollten Sie NULL
einfügen und nicht ''
.
insert into user (name,university_id) values ('harjeet', NULL)
AKTUALISIERUNG 2
$university_id = !empty($university_id) ? "'$university_id'" : "NULL";
insert into user (name,university_id) values ('harjeet', $university_id);
Als Nebenbemerkung ist die Abfrage mit SQL Injection
angreifbar
wenn der Wert (s ) der Variablen kam von außen. Bitte werfen Sie einen Blick auf den folgenden Artikel, um zu erfahren, wie Sie dies verhindern können. Durch die Verwendung von PreparedStatements
Sie können die Verwendung von einfachen Anführungszeichen um Werte loswerden.