无法找到对此的答案及其对INSERT INTO命令如何工作的相对简单的查询。
当我从PHP运行此命令时,它搜索数据库中的行名称,或者按数字顺序对它们进行处理。
$sql="INSERT INTO $tbl_name(title, date, description) VALUES('$title', '$date', '$description')";
数据库结构
因此,如果我要在此表中添加另一行(变为no.4),是否需要按顺序处理(即在“描述”之后),或者我可以从任何地方调用它,只要它具有相应的位置到VALUES数组?
答案 0 :(得分:2)
实际上,只要列存在于列中,列的顺序就完全没有关系。但值的顺序取决于您在INSERT
子句中声明列名的方式。优化程序不够智能,无法确定要插入的值是否为特定列。
如果你有交换列的值和数据类型在列上不匹配,它会隐式尝试将其转换为特定的数据类型,如果失败,则会抛出异常。
答案 1 :(得分:2)
如果您明确设置了列名(通过这样的子字符串$ tbl_name(标题,日期,描述)来实现)
...您可以忽略列的实际顺序。