我有这个表,它处理所有用户反馈,我在该表上有 id 列。我不确定它的目的是什么。此外,我没有在代码中看到任何ID。
PS:我刚收到互联网上的代码。
<?php
require_once ('database.php');
if (isset($_POST['send'])) {
$full_name = $_POST['full_name'];
$email = $_POST['email'];
$website = ($_POST['website']);
$message = ($_POST['message']);
{
$database->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$insert_query = "INSERT INTO tbl_feedback (full_name, email, website, message)
VALUES (?, ?, ?, ?)";
$insert = $database->prepare($insert_query);
$insert->execute(array($full_name, $email, $website, $message));
echo "<script>alert('Successfully sent!'); window.location='feedback.php'</script>";
}
}
?>
答案 0 :(得分:3)
id
列唯一标识每一行。毫无疑问,这是表的主键。
SQL表通常具有数字主键。它们非常方便外键引用。顺便提一下,它们还显示了各行的插入顺序。拥有这样的主键通常是一种很好的做法。
答案 1 :(得分:-1)
表的ID可以分配给AUTO INCREMENT
&amp;它是表格的主键。
如果列是AUTO_INCREMENT(如“id”列)或TIMESTAMP (如“reg_date”列),不需要在SQL中指定 查询; MySQL会自动添加值。
因此无需手动提供ID。每当用户插入数据时,都会自动生成id(即最后插入值的ID的+1)
但是在此行中,您还必须指定列名称,以便在未将值插入所有列时插入值
$insert_query = "INSERT INTO tbl_feedback (full_name, email, website, message)
VALUES (?, ?, ?, ?)";