登录
首页 >  文章 >  php教程

PHP PDO多语句插入失败:如何正确执行多个SQL语句?

时间:2024-12-05 09:24:47 142浏览 收藏

哈喽!今天心血来潮给大家带来了《PHP PDO多语句插入失败:如何正确执行多个SQL语句?》,想必大家应该对文章都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习文章,千万别错过这篇文章~希望能帮助到你!

PHP PDO多语句插入失败:如何正确执行多个SQL语句?

解决 php 原生 pdo 多个处理语句中插入错误

问题:使用 php 原生 pdo 尝试执行两个 sql 语句插入,但收到以下报错:

error!: sqlstate[42000]: syntax error or access violation: 1064 you have an error in your sql syntax; check the manual that corresponds to your mysql server version for the right syntax to use near 'insert into content_table (title) values ('标题') not null' at line 1

代码:

$sql= "alter table cate_table  add varchar(255) not null".
      "insert into content_table (name) values ('标题') not null";

try {
     $dbh =  new pdo($dsn, $user, $pass);;
     $dbh->exec($sql);
  } catch (pdoexception $e) {
     print "error!: " . $e->getmessage() 
     die();
  }

原因:

php pdo 中执行多句 sql 语句时,每句 sql 语句必须以分号 (;) 作为结束符。而原始代码中,两个 sql 语句之间缺少分号。

解决方案:

在原始代码中添加分号即可,如下:

$sql= "ALTER TABLE cate_table  ADD varchar(255) NOT NULL;";
      "INSERT INTO content_table (name) VALUES ('标题') NOT NULL";

今天关于《PHP PDO多语句插入失败:如何正确执行多个SQL语句?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>