向具有AUTO_INCREMENT列的表中插入行
我正在处理一个包含4列的表,第一列是名为id的自动递增整数。
如果我要使用mysqli预准备语句插入到这个表中,我总是在插入有效的查询时遇到问题。使用phpMyAdmin,它告诉我将其设置为空。我已经尝试过了:
$query = "INSERT INTO tbl (id, col2, col3, col4) VALUES ('NULL', ?, ?, ?)";
$stmt -> bind_param("ssi", $col2, $col3, $col4)
和这个
$query = "INSERT INTO tbl (id, col2, col3, col4) VALUES (NULL, ?, ?, ?)";
$stmt -> bind_param("ssi", $col2, $col3, $col4)
,并且只给出bind_param 3个参数(最后3个)。这两种方法都不管用。我还尝试了这个:
$null = NULL;
$query = "INSERT INTO tbl (id, col2, col3, col4) VALUES (?, ?, ?, ?)";
$stmt -> bind_param("issi", $null, $col2, $col3, $col4);
这些都不起作用。是否有插入此类型表格的标准化方法?
解决方案
跳过id
字段,mysql会自动填充:
$query = "INSERT INTO tbl (col2, col3, col4) VALUES (?, ?, ?)";
$stmt->bind_param("ssi", $col2, $col3, $col4)
相关文章