[心缘地方]同学录
首页 | 功能说明 | 站长通知 | 最近更新 | 编码查看转换 | 代码下载 | 常见问题及讨论 | 《深入解析ASP核心技术》 | 王小鸭自动发工资条VBA版
登录系统:用户名: 密码: 如果要讨论问题,请先注册。

[备忘]关于mysqldump导出的sql里的注释

上一篇:[备忘]HTML方式导出Excel文件,数字变科学计数法,解决方法
下一篇:[备忘]lombok,装这个,bean就不用写get,set方法了,呵呵

添加日期:2014/9/23 6:40:45 快速返回   返回列表 阅读4107次
在MySQL里,多行注释是 /* */,这个是SQL的标准

但是MySQL扩展了注释的功能

如果在开始的/*后面加了惊叹号,那么此注释里的语句将被执行

比如
mysql> /*! select * from test */;
+------+
| id   |
+------+
|    1 |
|    2 |
|    3 |
+------+
3 rows in set (0.00 sec)

再看如下语句
/*!50001 select * from test */;
这里的50001表示如果数据库是5.00.01以上版本,该语句才会被执行

因此虽然你的mysqldump出来的建立view的语句在注释里,实际上它是会被执行的

如果是一下内容,就不会执行了,那是真正的注释了
/* select * from test */;

至于你说的VIEW  dump出来后变成了drop table 视图名了,
你可以show tables看一下,即使是视图也能看到的
不过内部处理依然是视图,这个也是是mysql不太好的地方
但是不影响你的使用,视图依然是视图。
------------------------------------------
看了一下,导出的sql里,上面会有create table xxView
就是把view当做table来创建了。

后面会有view的定义,都跑完就正常了。
view就是view,没在table列表里显示。好奇怪。
 

评论 COMMENTS
没有评论 No Comments.

添加评论 Add new comment.
昵称 Name:
评论内容 Comment:
验证码(不区分大小写)
Validation Code:
(not case sensitive)
看不清?点这里换一张!(Change it here!)
 
评论由管理员查看后才能显示。the comment will be showed after it is checked by admin.
CopyRight © 心缘地方 2005-2999. All Rights Reserved