我正在使用 postgresql 作为数据库。并且字段上的条件不为空。当用户为该字段保留空白并点击输入它给出空指针异常时,因为在 postgresql 中对于整数它不会接受接受“”。关于如何处理这种情况的任何想法
最佳答案
如果您可以修改 INSERT 语句,则可以使用 COALESCE() 函数自动将 NULL 值替换为您指定的另一个值。
这是在未设置 $status 变量时自动在状态字段中插入 0(零)的示例:
INSERT INTO foo (name, status) VALUES ($name, COALESCE($status, 0) );
COALESCE函数可以接受任意数量的参数并返回它找到的第一个非 NULL 值。当您在确定默认值之前想要尝试的“瀑布”值时,这会派上用场。例如:
COALESCE($status1, $status2, $status3, $status4, 0)
关于postgresql 处理空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5717633/