好吧,我很沮喪,我不知道這個問題是什麼。我覺得自己就像一個糟糕的程序員。我試圖更新我的數據庫,並且我知道我嘗試更新的表存在。從字面上我知道這個查詢是準確的,但我不知道爲什麼它不起作用。第一個mysql語句執行,但第二個不執行。這是我的代碼。PDO準備好的陳述不會執行
$Statement = $Database->prepare("INSERT INTO table1 (tbl2id, col, col2) VALUES (?, ?, ?); UPDATE table2 SET this = ? WHERE id = ?");
$Statement->execute(array($table2id, $col, $col2, 1, $table2id));
所以我試圖設置數據庫,所以他們是一種連接。順便提一下,我列出了所有的列名。我不知道它是否有助於安全,但我不喜歡公開發布這些內容。無論如何,默認情況下'this'列是0,如果它是1,這意味着用戶已經回覆。所以'this'被設置爲tinyint並且默認值爲0.
我不是故意問一個愚蠢的問題或任何東西,我討厭承認它,但我真的不明白它。也許有一些關於我不知道的PDO陳述。我也嘗試過兩次單獨執行,但它仍然不行。而且我知道有人會說我沒有更新正確的桌子或其他東西。但我發誓這是正確的,我已經檢查了至少10次。
非常感謝。我喜歡自己弄點東西,但我不能再浪費時間了。
,如果你把它分成兩個查詢會發生什麼? –
我這樣做了,它仍然不會執行,我讀了PDO :: ATTR_EMULATE_PREPARES,我知道它默認設置爲1,並且我沒有搞砸了,所以我不認爲這是問題 – Alex
我意思是,顯然可能沒有足夠的信息從我的帖子中解決問題,並且我知道我發佈的代碼似乎沒有任何錯誤。我會一直試圖解決它,但我只是想確保沒有任何錯誤發生,這很明顯。就像我不知道的PDO,我正在強調。 – Alex