MySQL 注解语法

2013-04-29_173736

这是MySQL 5实力养成暨评量里的3-60.‘在SQL叙述中,我们可以采用哪些方式在SQL叙述中加入注解来增加脚本的可读性?

答案:(A)#(B)–(C)/*…*/

[adsense][/adsense]

有谁会在SQL中写注解的?我想地球上所有的人类中会少我一个吧,一直只知道在程式中写注解,从来就没想在SQL写注解的刘子,今天终于面临到这个恶梦了,#的使用不会有问题,因为perl不是也有这样的注解方式吗,/*…*/,更是熟悉不过了,C跟Java不是也是这样干的,但是这个–方式,很抱歉我只好缺席了,为了加入这个–的圈圈中,我们只好痛定思痛了。

先看看在手册哪里有说明吧

MySQL 5.7 Reference Manual :: 9 Language Structure :: 9.6 Comment Syntax

引用繁体手册MySQL 5.1参考手册 :: 9.语言结构::9.5注释语法的资讯如下:

MySQL伺服器支持3种注释风格:

·         从’ # ‘字符从行尾。

·         从’ — ‘序列到行尾。请注意’ — ‘ (双破折号)注释风格要求第2个破折号后面至少跟一个空格符(例如空格、tab、换行符等等)该语法与标准SQL注释语法稍有不同,后者将在1.8.5.7, “’–‘作为注释起始标记”中讨论。

·         /*序列到后面的*/序列。结束序列不一定在同一行中,因此该语法允许注释跨越多行。

下面的例子显示了3种风格的注释:

mysql> SELECT 1+1; # This comment continues to the end of line
mysql> SELECT 1+1; -- This comment continues to the end of line
mysql> SELECT 1 /* this is an in-line comment */ + 1;
mysql> SELECT 1+
/*
this is a
multiple-line comment
*/
1;

上述的注释语法适用于mysqld伺服器如何分析SQL语句。发送到伺服器之前,mysql 客户程序也执行部分语句解析。(例如,它通过解析来确定在多语句行中的语句边界)

MySQL 5.1中,mysql解析/* …*/注释的唯一局限性是结合该风格的注释定界符使用的叹号标记了有条件执行的SQL语句部分。适用于交互式运行mysql和将命令放入一个文件中,并以批处理模式使用mysql来处理mysql <file_name的文件。详细信息和例子参见1.8.4节,“MySQL对标准SQL的扩展”

例子中解释的太清楚了,好吧,今天就分想到这里。