我有一个SQL语句:
UPDATE user SET name=?, email=?, password=?, gender=?, birthDate=? WHERE token=? AND email=? AND password = ?
一切正常但是,当我尝试将birthDate设置为NULL时,我收到一个SQLException。
声明是正确的(我在phpMyAdmin控制台中检查过它。)
将birthDate设置为NULL:
if (user.getBirthDate() != null)
ps.setDate(5, user.getBirthDate());
else
ps.setNull(5, java.sql.Types.DATE);
当设置为随机日期(例如,今天)时 - 一切正常。
它出了什么问题?有什么想法吗?
答案 0 :(得分:0)
你需要在java代码中做一些条件逻辑来确定你的sql查询是什么。如果您希望将出生日期设置为null,则您的语句必须为
UPDATE user SET name=?, email=?, password=?, gender=?, birthDate=null
WHERE token=? AND email=? AND password = ?
否则,正如您所注意到的,查询很好。