我在下面有一个“问题”数据库表:
SessionId (PK) QuestionId (PK) QuestionContent
MUL 1 What is 2+2 and 3+3?
MUL 2 Name three things you will find in a car?
MUL 3 What are the four seasons?
以下是我在 mysqli 中收到的错误:
第 242 行 /.../ 中键 'PRIMARY' 的重复条目 'RZC-1'
警告:mysqli_stmt::execute(): (23000/1062): /.../第 242 行中键 'PRIMARY' 的重复条目 'RZC-2'
警告:mysqli_stmt::execute(): (23000/1062): /.../第 242 行中键 'PRIMARY' 的重复条目 'RZC-3'
为什么我收到关于重复条目的错误,因为我已经说明在问题表中,“SessionId”和“QuestionId”都是主键。我是否需要执行 SQL 语句来提及它们都是复合键?
下面是将值插入“问题”表的 mysqli 代码:
var_dump($_POST);
$i = 0;
$c = count($_POST['numQuestion']);
for($i = 0; $i < $c; $i++ ){
$questionsql = "INSERT INTO Question (SessionId, QuestionId, QuestionContent)
VALUES (?, ?, ?)";
$sessid = $_SESSION['id'] . ($_SESSION['initial_count'] > 1 ? $_SESSION['sessionCount'] : '');
if (!$insert = $mysqli->prepare($questionsql)) {
// Handle errors with prepare operation here
}
$insert->bind_param("sis", $sessid, $id, $_POST['questionText'][$i]);
$insert->execute();
if ($insert->errno) {
// Handle query error here
}
$insert->close();
}
更新:
描述问题;
Field Type Null Key Default Extra
SessionId varchar(10) NO PRI NULL
QuestionId int(10) NO PRI NULL
QuestionContent varchar(5000) NO NULL