繁体   English   中英

SQLSTATE [HY000]:一般错误

[英]SQLSTATE[HY000]: General error

我有一个mysql dynamic-sql语句,我想使用pdo运行它,并且收到以下错误消息:

警告:PDOStatement :: fetchAll()[pdostatement.fetchall]:SQLSTATE [HY000]:第29行的C:\\ xampp \\ htdocs \\ tags \\ cobasql.php中的常规错误

这是我的PHP代码:

<?php 
   $uname = 'root'; //nama username database 
   $pwd = ''; //Password database 
   $dbname = 'eav_latihan'; //nama Database 

   /* Initialisasi database */ 
   $db = new PDO('mysql:host=localhost;dbname='.$dbname, $uname, $pwd); 
   $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING); 


   $query = "SET @sql = NULL; ". 
            " SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(a.Name = ''', ". 
            " a.Name, ''', ca.value, NULL)) AS ', a.Name )) INTO @sql ". 
            " FROM cust_attribute ca ". 
            " INNER JOIN attribute a ON ca.idAttribute = a.idAttribute ". 
            " INNER JOIN customer c ON c.idCustomer = ca.idCustomer ". 
            " WHERE a.publish = 'Y'; ". 
            " SET @sql = CONCAT('SELECT c.idCustomer, c.namaCustomer, ' ". 
            " ' c.email, c.noTelp, ', @sql, ' FROM cust_attribute ca', ". 
            " ' INNER JOIN attribute a ON ca.idAttribute = a.idAttribute', ". 
            " ' INNER JOIN customer c ON c.idCustomer = ca.idCustomer', ". 
            " ' GROUP BY c.idCustomer'); ". 
            " SELECT @sql; ". 
            " prepare stmt FROM @sql; ". 
            " execute stmt;"; 

   $result_array = array();
   $queryku = $db->query($query);
   $result_array = $queryku->fetchAll(PDO::FETCH_OBJ);
   echo $result_array;
?>

这里的任何人都可以帮助我或给我建议吗?

好像你无法连接一样!

这条线在这里

$db = new PDO('mysql:host=localhost;dbname='.$dbname, $uname, $pwd);

尝试删除$ dbname var并输入正确的值,以便您的行看起来像

 $db = new PDO('mysql:host=localhost;dbname=dbname', $uname, $pwd);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM