MySQL将NULL插入Varchar列

时间:2014-09-25 20:11:03

标签: php mysql

为什么我不能使用MySQL将NULL插入varchar列?

PHP:

if ($startSemester == "") {
    $startSemester = 'NULL';
}

mysqli_query($gradschool_application_2_connect, "INSERT INTO Application (startSemester) VALUES ('".$startSemester."')");

此当前代码输入字符串NULL而不是类型。如果我删除单引号,我的查询将无效。

2 个答案:

答案 0 :(得分:1)

这一半的半傻瓜:MySQL Inserting NULL Value into INT Column

您在查询中引用了NULL字符串,因此您正在生成

 ... VALUES ('NULL')

SQL null是关键字,不能引用

[..snip...]) VALUES ('".$startSemester."')");
                     ^------------------^--- remove these quotes

引用它将其转换为包含字母NULL的字符串,当插入到int字段中时,它只会被转换为a 0

答案 1 :(得分:0)

试试这个:

mysqli_query($gradschool_application_2_connect, "INSERT INTO Application (startSemester) VALUES ($startSemester)");