mysql 服务器支持 # 到该行结束
、-- 到该行结束
以及 /* 行中间或多个行 */
的注释方格:
mysql> SELECT 1+1; # 这个注释直到该行结束 mysql> SELECT 1+1; -- 这个注释直到该行结束 mysql> SELECT 1 /* 这是一个在行中间的注释 */ + 1; mysql> SELECT 1+ /* 这是一个 多行注释的形式 */ 1;
注意 -- (双长划)
注释风格要求在两个长划后至少有一个空格!
尽管服务器理解刚才描述的注释句法,但 MySQL 客户端的语法分析在 /* ... */
注释方式上还有所限止:
- 单引号和双引号被用来标志一个被引用字符串的开始,即使是在一个注释中。如果注释中的引号没有另一个引号与之配对,那和语法分析程序就不会认为注释结束。如果你以交互式运行
mysql
,你会产生困惑,因为提示符从mysql>
变为'>
或">
。 - 一个分号被用于指出当前 SQL 语句的结束并且跟随它的任何东西表示下一行的开始。
不论你是以交互式运行 mysql
还是将命令放在一个文件中,然后以 mysql < some-file
告诉 mysql
读取它的输入,这个限制均存在。
笔者认为:单行注释最好用 # 开始,而不要用 -- , 因为用 -- 做 注释后面必须至少有一个空格,有时忘写了就会出现错误!