2010-06-01 12 views
16

Tôi đã luôn luôn tò mò về những gì các bình luận kèm theo tiền xử lý giống như báo cáo mysqldump tạo cho tôi có nghĩa là. Dưới đây là một ví dụ:Câu lệnh * *! Xxxxxx */được tạo bởi mysqldump có nghĩa là gì?

/*!40000 ALTER TABLE abc DISABLE KEYS */; 

Các mô hình chung có vẻ là

/*![some numeric code] [some statement] */; 

hãy trỏ đến tài liệu thích hợp nếu tồn tại. Nếu không giải thích. :)

+2

http://kedar.nitty-witty.com/blog/sql-syntax-with-c-style-comments-in-mysqldump/ – nuqqsa

Trả lời

23

http://dev.mysql.com/doc/refman/5.1/en/comments.html

cho ý kiến ​​về hình thức /*! stuff */ được coi là ý kiến ​​của RDBMS khác, nhưng MySQL sẽ đọc những gì bên trong những nhận xét và thực hiện nó như SQL. Bạn có thể sử dụng điều này để tận dụng các tính năng cụ thể của MySQL ngay cả khi sử dụng mã có thể chạy trên các RDBMS khác. Ví dụ: bạn có thể sử dụng /*! ENGINE=INNODB */ trong truy vấn CREATE TABLE.

Các số là tùy chọn và nếu bạn sử dụng chúng thì MySQL sẽ bỏ qua chúng nếu số phiên bản của nó nhỏ hơn số (với dấu chấm được chèn vào các vị trí thích hợp).

Các vấn đề liên quan