【发布时间】:2015-03-15 21:46:13
【问题描述】:
我对 MySQL 查询有一点问题。我正在使用 PDO 查询,现在它只是将值插入到表中(见下文):
$stmt = $dbh -> prepare("INSERT INTO tmp (user_id, test_id, question_id, answer_id) VALUES (?, ?, ?, ?)");
$stmt -> bindParam(1, $_SESSION['UserID']); // binds parameter for user id
$stmt -> bindParam(2, $_GET['start_test']); // binds parameter for test id
$stmt -> bindParam(3, $_POST['question']); // binds parameter for selected answer
$stmt -> bindParam(4, $_POST['select_answer']); // binds parameter for selected answer
$stmt -> execute();
tmp表结构如下:
CREATE TABLE IF NOT EXISTS `tmp` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`test_id` int(11) NOT NULL,
`user_id` int(11) NOT NULL,
`question_id` int(11) NOT NULL,
`answer_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
)
如果answer_id 值不存在,我想插入它并同时检查 user_id 是否存在,否则只需更新,例如:
我有两个 user_id=1 和 user_id=2 的用户,他们分别回答每个学生商店的问题和每个答案。 User_id=1 选择 answer_id = 3 和 user_id=2 选择 answer_id = 3。但是,一个用户意识到这是一个错误的答案并想要将其更改为另一个(假设 answer_id=2),我希望查询更新当前answer_id=3 WHERE user_id=1 到 answer_id=2
【问题讨论】:
标签: php jquery mysql sql mysqli