是否可以使用相同的查询向两个表提交数据?
我现有的代码如下所示:
private function adduser() {
if (!empty($this->error)) return false;
$params = array(
':user_level' => parent::getOption('default-level'),
':name' => $this->name,
':email' => $this->email,
':username' => $this->username,
':password' => parent::hashPassword($this->password)
);
parent::query("INSERT INTO `login_users` (`user_level`, `name`, `email`, `username`, `password`)
VALUES (:user_level, :name, :email, :username, :password);", $params);
我没有写这段代码,因此我有点困惑,因为我通常不使用PDO。除了这个我想做的是在我的'url_alias'表中添加两个值,第一个是UID(从第一个查询自动递增),第二个是另一个变量值。
我搜索时找到的所有示例似乎都不适用于我,因为现有代码看起来很像。
任何人都可以帮我一把吗?
答案 0 :(得分:0)
您使用的数据库驱动程序(PDO,Mysqli等)并不重要,您提出的问题纯粹是关于mysql功能。 Mysql可以在单个查询中更新和删除多个表中的行,但不能插入。即<{1}}是不允许的。
您必须为要插入数据的每个表运行一个查询。