一、
/* .... */ 在大部分語言中都一樣是注釋。這個之中的語句是不被執行的。
但MYSQL中 為了保持兼容,比如從mysqldump 導出的SQL語句能被其它數據庫直接使用,它把一些特有的僅在MYSQL上的語句放在 /*! ... */ 中,這樣這些語句如果在其它數據庫中是不會被執行,但在MYSQL中它會執行。
二、
mysql /*!50001 注釋解釋
在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 */;