2017-07-10 203 views
0

这里是我的代码:语法错误,查询SQL

try 
{ 
    $bdd=new PDO('mysql:host=localhost;dbname=cmadatabase','root','@Rugby3390'); 
    $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    $reponse= $bdd->query('SELECT IR,Level,Type,ToBeAnalyzed, 
            Supplier,Consequences,Remarks, 
            SUM(Level,Type,Supplier) AS sommeLvlTypeSup 
          FROM andgate 
          GROUP BY IR,Level,Type,ToBeAnalyzed, 
            Supplier,Consequences,Remarks 
          ORDER BY SUM(Level,Type,Supplier) ASC'); 
    while ($donnees = $reponse->fetch()){ 
     echo '<p>'.$donnees['IR'].','.$donnees['Level'].','.$donnees['Type'].','.$donnees['ToBeAnalyzed'].','.$donnees['Supplier'].','.$donnees['Consequences'].','.$donnees['Remarks'].','.$donnees['sommeLvlTypeSup'].'<p>'; 
     } 
} 

catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage();} 

?> 

这是我的错误:

连接失败:SQLSTATE [42000]:语法错误或访问冲突:1064 ERREUR德syntaxe PR sde'Type,Supplier)AS sommeLvlTypeSup FROM andgate GROUP BY IR,Level,Type,ToBeAnalyz' la ligne 1

你能帮忙吗?我不是在我的语法错误是在哪里?

THX很多

+0

'SUM(等级,类型,供应商)' - 是什么让你觉得SUM可以使用这种方式,或者说,即使这将使任何意义吗? – CBroe

+2

请不要垃圾邮件的SO。尝试编辑您的旧帖子。而不是发布新的问题。 https://stackoverflow.com/questions/45007553/pdo-exeption-errors我投票结束这个问题 – JYoThI

+1

如果你可以阅读它,只是有可能你可以调试它! – RiggsFolly

回答

0

尝试改变

"ORDER BY SUM(Level,Type,Supplier)" 

"ORDER BY sommeLvlTypeSup" 

从理论上讲,GROUP/ORDER BY SUM(..)无法正常工作。

0

尝试ORDER BY sommeLvlTypeSup代替SUM(Level,Type,Supplier)