我正在尝试使用 PDO(php 数据对象)在 .php 文件中执行查询,如下所示:
global $db, $table;
$sth = $db->prepare('INSERT INTO $table(user, timerun, magexp, crimsons, blues, golds, greens) VALUES (:user,:timerun,:magexp,:crimsons,:blues,:golds,:greens) ON DUPLICATE KEY UPDATE timerun=timerun+:timerun, magexp=magexp+:magexp, crimsons=crimsons+:crimsons, blues=blues+:blues, golds=golds+:golds, greens=greens+green');
$sth->execute(array(':user' => $user, ':timerun' => $timerun, ':magexp' => $magexp, ':crimsons' => $cr, ':blues' => $bl, ':golds' => $go, ':greens' => $gr));
echo "success";
但是,它实际上并没有更新我的表。我没有收到错误或任何东西。
我做错了什么还是不支持 PDO?PDO 文档说“注意:某些 MySQL 表类型(存储引擎)不支持事务。当使用不支持事务的表类型编写事务数据库代码时,MySQL 将假装事务已成功启动。此外,任何 DDL发出的查询将隐式提交任何待处理的事务。”
我相当肯定我的 MySQL 表确实支持事务,因为常规的“mysql_query”确实有效。
谢谢。