2017-03-31 46 views
0

我在ezSQL有問題。MariaDB服務器版本的正確語法使用附近

代碼:

$dbo->query("INSERT INTO chart_logs (chart_id, uname, option_id) VALUES ('1', '1', '1'); INSERT INTO chart_logs (chart_id, uname, option_id) VALUES ('2', '2', '2'); "); 

錯誤:

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSERT INTO chart_logs (chart_id, uname, option_id) VALUES ('2', '2', '2')' at line 1

但是,

這個SQL查詢的工作phpmyadmin的SQL命令成功。我不明白這一點。爲什麼sql代碼在ezsql查詢中不起作用?

+2

你試圖運行一個多查詢,而不是使用功能吧。 –

+0

但是,它在那裏缺少引號。 –

+0

將每個查詢分割爲多次調用'$ dbo-> query()'。 – Barmar

回答

0

ezSQL不支持在單個查詢中運行多個語句。每個語句必須在單獨的查詢中執行。

原來的答覆:

運行只是一個 SQL語句。

MariaDB的支持多行插入帶有VALUES子句...

INSERT INTO chart_logs (chart_id, uname, option_id) VALUES 
    ('1', '1', '1') 
    , ('2', '2', '2') 
+0

感謝它的工作原理,但同樣的錯誤DELETE查詢第1行? ('_','1','1'); DELETE FROM chart_logs where chart_id = 3; –

+0

正如我在答案中所說的......在查詢中只運行一個SQL語句。這意味着sql文本應該有*一個* INSERT語句或*一個* DELETE語句。 (* ezSQL *不支持在單個查詢中運行多個語句。) – spencer7593

相關問題