簡體   English   中英

如何檢查 MySQL 查詢語法?

[英]How can I check a MySQL query syntax?

我正在開發我自己的數據庫管理系統,用 PHP 開發,我為我自己的查詢選擇了與 MySQL 查詢相同的語法。

我想知道是否有一種工具可以檢查 MySQL 查詢是否有效,而無需連接到真正的 MySQL 數據庫。

有人有辦法做到嗎? 我已經考慮過使用一些正則表達式,但我不確定這是最簡單(也是最快)的方法。

有一些很好的 PHP SQL 解析器可以將查詢分解為結構化數組。

您可以通過解析器運行代碼並查看它是否中斷以確定它是否是有效的語法。

http://code.google.com/p/php-sql-parser/

http://pear.php.net/package/SQL_Parser

是 2 我過去用過。

set @s := 'your sql script';
prepare stm1 from @s;

像這樣的工具不能確保表或列存在。 該工具需要數據庫模式來檢查錯誤。 我使用 heidisql,如果我有更多的錢,我會購買在 mysql 服務器上擁有多個數據庫的權利,我會執行“創建數據庫”或復制數據庫代碼並在沒有任何值的第二個數據庫上進行測試,或者最好有值。

我相信您可以在phpmyadmin中嘗試一些方法來測試您的代碼,而不會影響數據庫。

REGEX的工作量太大...也許創建一個虛擬表並在那里嘗試語法?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM