gpt4 book ai didi

php - MYSQL 和 PHP INSERT NULL 值

转载 作者:行者123 更新时间:2023-11-29 06:55:01 29 4
gpt4 key购买 nike

假设我的表只有这些成员 - id(键)和日期(默认为 NULL)。现在,当我想用​​我的 php 插入一行时,我是否需要在查询之前检查日期是否有值,或者我是否可以像这样插入 -

 $query = "INSERT INTO mytable VALUES(3,{$_GET['date]})" 

mysql 会为 date 分配一个 NULL 值吗?

无论表格有多大,这都适用吗?

例如:我可以将许多来自 php 且可能为空(或 null)的值插入到表中吗,mysql 会自动将 NULL 分配给它们(如果我默认将它们定义为 NULL 当然)或者我是否需要在插入之前进行各种检查?

最佳答案

不,它将分配通过参数 $_GET['date'] 传递的值。如果值为空 '' 并且日期的数据类型为 varchar,它将插入一个 '' 值,该值不同于 >NULL 然后它会插入一个空的。那是因为 NULL 和空字符串不相等。它们在 SQL 中是两个不同的东西。

如果要插入NULL 值,要么在插入列列表中忽略此列,然后它会被赋予默认值NULL。或者将其显式写入 INSERT 语句的值中。

请注意:您以这种方式编写的代码容易受到 SQL injection 的攻击.您应该改用准备好的语句或 PDO。有关更多详细信息,请参见:

关于php - MYSQL 和 PHP INSERT NULL 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13284414/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com