文字列内のセミコロンだけでなく、より多くの問題が発生します。
- スクリプト
組み込み mysql_query()
で実行できないコマンド 、USE
のように 。 -
DELIMITER
。 -
CREATE PROCEDURE
のように、セミコロンを含むが引用符で囲まれていないステートメント 。
mysqlコマンドラインクライアントにシェルアウトせずに、このタスクを処理する簡単な方法を知りません。そのクライアントが存在することを信頼することはできないとおっしゃっていましたが、そのクライアントがないと、スクリプトを解析してステートメントを適切に実行するために大量のPHPコードが必要になります。
このようなコードは、phpMyAdmin 内にある場合があります。 製品。ただし、その製品はGPLの下でライセンスされているため、いずれかのコードを使用する場合は、GPLの下で独自のプロジェクトのライセンスも取得する必要があります。
これらの関連する質問に対する私の回答も参照してください: