mysql服务器的注释总结

MySQL允许在SQL 代码中使用注释。这对于阅读代码很有用处。MySQL服务器支持3种注释风格:

1、“#”注释

以“#”字符开始,到所在行结尾的所有字符。

mysql> select @schema; #which schema

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

mysql> select @schema; # which schema

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

字符“#”和之后的字符之间,有无空格均可。

2、“--”+“空格”注释

用两个短划线和一个空格注释;从这两个短划线到行的结束的所有内容都作为注释处理。以“--”字符开始,到所在行结尾的所有字符。特别注意:双破折号要求第2个破折号后面至少跟一个空格符(例如空格、tab、换行符等等)。

2.1.不带空格的情况:

mysql> select @schema; --which schema

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

-> ;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘--which schema‘ at line 1

mysql>

2.2.带空格的情况:

mysql> select @schema; -- which schema

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

3、“/*  */”单行或者多行注释

从“/*”字符开始,到“*/”结尾。结束序列不一定在同一行中,因此该语法允许注释跨越多行。

3.1.单行注释

3.1.1.和注释内容之间无空格

mysql> select @schema; /*which schema*/

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

3.1.2.“/*”和注释内容之间有空格

mysql> select @schema; / *which schema*/

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.01 sec)

-> ;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘/ *which schema*/‘ at line 1

3.1.3.“*/”和注释内容之间有空格

mysql> select @schema; /*which schema */

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

3.2.多行注释

3.2.1.和注释内容之间无空格

诸如如下例子:

select @schema

/* which schema

how to get schema*/;

mysql> select @schema

-> /*which schema

/*> how to get schema*/;

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

3.2.2.“*/”和注释内容之间有空格

mysql> select @schema

-> /*which schema

/*> how to get schema */;

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

3.2.2.“/*”和注释内容之间有空格

mysql> select @schema

-> /* which schema

/*> how to get schema*/;

+---------+

| @schema |

+---------+

| NULL    |

+---------+

1 row in set (0.00 sec)

综述,“/* */”单行注释内容时,“/*”和注释内容之间不能有空格;

“/* */”多行注释内容时,“/* */”和注释内容之间有无空格均可。

4、“/*! */”注释

隐藏MySQL特有的关键字,注释以“/ * !”而不是以“ / *”起头。MySQL查看这种特殊类型注释的内部并使用这些关键字,但其他数据库服务器将这些关键字作为注释的一部分忽略。这样有助于编写由MySQL执行时利用MySQL特有功能的代码,而且该代码也可以不用修改就用于其他数据库服务器。

例如:

/*!50001 DROP TABLE IF EXISTS `count_yysbh`*/;

50001表示假如数据库版本是5.00.01以上版本,“DROP TABLE IF EXISTS `count_yysbh`”才会被执行。

时间: 2024-08-27 15:03:50

mysql服务器的注释总结的相关文章

CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境

CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境 准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口

Navitcat连接远程mysql服务器连不上

用putty操作mysql数据库不太方便,就想着用Navitcat通过SSH去连接远程mysql服务器,可实现动态对数据进行修改操作.依网上很多网友的意见,楼主使用以下命令:vim /etc/my.cnf. 在[mysqld]下面加入如下两行 skip-name-resolve skip-grant-tables 保存,重启mysql服务,结果在putty上登录不上mysql(用户名和密码没错),后来去掉skip-grant-tables,终于登上了.然后我在网页上操作部署在远程服务器上的项目,

上课笔记第三十二天MySQL服务器日志、备份和恢复

1.MySQL服务器日志                MySQL日志:                          查询日志:由于I/O占用比较大所以不建议开启.                          慢查询日志:记录查询时间超出设定时间的查询语句.                          错误日志:记录错误信息                          二进制日志:重做日志                          中继日志:备服务器从主服务器复制

远程连接Mysql服务器

1.命令行:C:/>mysql -h 192.168.0.53 -P 3306 -u vicky -padmin 本地计算机是win7系统,远程计算机室Linux系统. 192.168.0.53是我远程linux系统的IP,连接成功后会出现"mysql>" 出现的问题解决集囊: 1.Can't connect to MYSQL server on '192.168.0.53'; 可能原因: 1.MYSQL服务未启动. 打开远程计算机的mysql服务. 2.3306端口只对本

(mysql+php+apache)127.0.0.1和localhost可以连接mysql服务器,而ip却不能

127.0.0.1和localhost可以连接mysql服务器,但是对应的ip却不能,并且报错: Can‘t connect to MySQL server  on  "10.0.73.25"(111) 可能是以下原因: 1.网络不通:ping 10.0.73.25  发现能ping通 ,排除此原因. 2.mysql配置问题:打开mysql的配置文件mysql.cnf(linux下的路径一般为/etc/mysql/mysql.cnf),产看skip-networking和bind_ad

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘127.0.0.1’ (111) 修复无法连接到MySQL服务器

昨天重新装好Ubuntu然后配置完Django和pycharm后忘了测试mysql,今天配置时遇到了问题: ERROR 2003 (HY000): Can't connect to MySQL server on '(IP地址)' (111) 修复无法连接到MySQL服务器 这是一个链接MySQL的常见问题 下面是处理它的基本步骤. 1.如果数据库服务器是在远程计算机上,然后尝试使用测试客户端-服务器连接ping命令,例如: $ ping server_ip_address Ping主机 一旦有

使用Navicat for Mysql连接mysql服务器

使用Navicat for Mysql连接mysql服务器 在windows上用Navicat for Mysql 连接装在虚拟机Ubuntu上的mysql服务器时出现的问题的解决方案. Navicat 是一套功能强大的MySQL数据库及开发工具,可以用于在任何3.21或以上的MySQL版本,并支援最新版MySQL的大部份功能,包括触发器.预存程序.函式.事件.检视.管理使用者等等. Navicat MySQL适用于三种平台- Microsoft Windows, Mac OS X及Linux.

解决mysql连接linux上mysql服务器的问题

在远程连接mysql的时候,连接不上,出现如下报错:Lost connection to MySQL server at 'waiting for initial communication packet', system error: 0截图如下: 原因分析:mysql开启了DNS的反向解析功能,这样mysql对连接的客户端会进行DNS主机名查找.mysql处理客户端解析过程:1)当mysql的client连过来的时候,服务器会主动去查client的域名.2)首先查找 /etc/hosts 文

Mysql服务器处理客户端请求流程

在日常执行mysql语句的过程中,都是客户端进程向服务器进程发送一段文本(MySQL语句),服务器进程处理后再向客户端进程发送一段文本(处理结果). 看似很简单,其实不然,这内容有很多东西是需要注意的.下面借用两张图来说明,其实两张图表示的意思都是一样. 上面的图对于中间的解析和优化不是很透彻,下面的图将解析和优化说的更明确. 接下来就分开说明下: 连接管理/连接器 连接器就是用来客户端和服务器进程之间建立连接的,这个方式有很多,比如说TCP/IP,命名管道或共享内存等等,这个阶段的连接需要客户