一部の他の SQL
データベースでは、コメントを開始するために
'--
' が使用されます。MySQL
サーバでは、コメント開始文字として
‘#
’
が使用されます。また、C コメントスタイルの
/* this is a comment */
を使用することもできます。 See
項6.1.6. 「コメント構文」。
MySQL サーババージョン 3.23.3
以降では、'--
'
コメントスタイルを使用することができます。ただし、コメントの後にスペース(または、改行などの制御文字)が続く場合に限ります。これは、このコメントスタイルによって、!payment!
の値を自動的に挿入する次のようなコードを使用した自動生成の
SQL
クエリで多数の問題が発生していたためです。
UPDATE tbl_name SET credit=credit-!payment!
payment
の値が負数の場合、どうなるかを考えてみてください。SQL
では 1--1
が有効なので、コメントを '--
'
で開始できるようにした場合の影響は重大です。
MySQL サーババージョン 3.23.3
以降でコメントのこの方法の実装を使用した場合、1--
This is a comment
は実際に安全です。
もう 1 つの安全な機能は、mysql
コマンドラインクライアントによって
'--
'
で始まるすべての行が削除されるというものです。
以下の情報は、3.23.3 より前のバージョンの MySQL を実行している場合にのみ関連します。
テキストファイルの SQL プログラムに
'--
'
コメントが含まれている場合、次のコマンドを使用する必要があります。
shell>replace " --" " #" < text-file-with-funny-comments.sql \
| mysql database
通常の次のコマンドの代わりに、上記のコマンドを使用してください。
shell> mysql database < text-file-with-funny-comments.sql
また、コマンドファイルを ``その場で''
編集して、'--
' コメントを
‘#
’
コメントに変更することもできます。
shell> replace " --" " #" -- text-file-with-funny-comments.sql
次のコマンドで元に戻してください。
shell> replace " #" " --" -- text-file-with-funny-comments.sql
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.