我只是用PDO涉足的第一次,我不斷收到,我真的想不通錯誤,導致該問題的代碼如下:令人沮喪的PDO錯誤?
<?php
try {
// Querying the database
$STH = $DBH->query("SELECT 'Group' from 'GroupTable'");
// Setting the fetch mode
$STH->setFetchMode(PDO::FETCH_ASSOC);
while($row = $STH->fetch()) {
echo '<option value="',$row['Group'],'">',$row['Group'],'</option>';
}
}
catch(PDOException $e) {
echo "Error connecting to Database";
file_put_contents('logs/logsDB.txt', $e->getMessage(), FILE_APPEND);
}
?>
我不斷收到相同錯誤,即:
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 ''GroupTable'' at line 1
我試過報價/ unquoting表/列名,不帶引號的,當我得到這個錯誤:
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 'Group FROM GroupTable' at line 1
我會檢查和雙通道ecked,該表被DEFINITELY稱爲GroupTable,並且該列肯定被稱爲Group。
對不起,如果這確實明顯或nooby,我只是想惹這個局面,看看我能學到的基礎知識,道歉,如果代碼不符合標準等
謝謝!原來反引號是這裏的問題,雖然我覺得奇怪的是他們決定在引號在其他語言中使用時反引號(這是我第一次不得不使用反引號) – Sean 2012-07-29 15:23:02
@SeanDunwoody:使用引號代表**字符串**其中,tick用於表示**表和數據庫名稱**。 – 2012-07-29 15:25:32
我的理解是,當這些事情習慣於我習慣的舊SQL查詢時,我很奇怪,我不確定他們爲什麼決定從這個''切換到' – Sean 2012-07-29 15:26:49