Apenas permita a coluna
university_id
da tabela user
para permitir NULL
valor para que você possa salvar nulls . 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)
)
ATUALIZAÇÃO 1
com base no seu comentário, você deve inserir
NULL
e não ''
. insert into user (name,university_id) values ('harjeet', NULL)
ATUALIZAÇÃO 2
$university_id = !empty($university_id) ? "'$university_id'" : "NULL";
insert into user (name,university_id) values ('harjeet', $university_id);
Como nota lateral, a consulta é vulnerável com
SQL Injection
se o valor(s ) das variáveis veio de fora. Por favor, dê uma olhada no artigo abaixo para saber como evitar isso. Usando PreparedStatements
você pode se livrar de usar aspas simples em torno de valores.