这是我的 MySQL 错误。
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 2
我用谷歌搜索并阅读了一些关于它的内容,但我无法理解。
如何解决?
这是主要部分addStudent.php
:
require_once('../db.php');
$db = new DB();
if (isset($_POST['st_fname']) && isset($_POST['st_lname']) && isset($_POST['st_class']) && isset($_POST['st_grade']))
{
$db->addStudent($_POST["st_fname"], $_POST["st_lname"], $_POST["st_class"], $_POST["st_grade"], $_POST["checkOlamp"]);
}
这是一部分db.php
:
public function addStudent($fname, $lname, $classnum, $grade, $olamp)
{
$query = "INSERT INTO t_student (s_fname, s_lname, s_class, s_grade, s_olamp) VALUES('$fname', '$lname', '$classnum', '$grade', '$olamp');";
$this->execute($query);
}
并且 t_student 有一个作为primary
键的字段,它是自动递增的。
- db.php 是我一直使用它而不是 php 中的 mysql_connection 函数的东西,但我不知道它到底是什么。我知道那里使用了一种叫做“PDO”的东西。