PHP代码:
$saveMovie = $db->connect()
->prepare("INSERT INTO test (nick,pass) VALUES
(:nick, :pass)");
$saveMovie->execute(array(
"nick" => $nick,
"pass" => $pass,
));
我希望得到这个插入的数据:
print_r($saveMovie->fetch(PDO::FETCH_ASSOC));e
我收到错误:
SQLSTATE [HY000]:常规错误
答案 0 :(得分:1)
在MySQL中,无法从插入中获取数据。
通常这样做是没有意义的,因为你显然已经拥有这些数据,除了自动生成的字段。如果它只是自动递增的id,你可以通常的方式得到它:
$pdo = $db->connect();
$sql = "INSERT INTO test (nick,pass) VALUES (:nick, :pass)";
$row = array("nick" => $nick, "pass" => $pass);
$pdo->prepare($sql)->execute($row);
$id = $pdo->lastInsertId();
$row['id'] = $id;
// now you have your inserted data with id
var_dump($row);
如果您仍想选择数据库中的行,则将该$ id与常规SELECT查询一起使用。