Hướng dẫn what are the rules for naming a table in mysql? - các quy tắc đặt tên bảng trong mysql là gì?
From mysql 8.0 reference manual at https://dev.mysql.com/doc/refman/8.0/en/identifiers.html: Show
"Identifiers are converted to Unicode internally. They may contain these characters: Permitted characters in unquoted identifiers: ASCII: [0-9,a-z,A-Z$_] (basic Latin letters, digits 0-9, dollar, underscore) Extended: U+0080 .. U+FFFF Permitted characters in quoted identifiers include the full Unicode Basic Multilingual Plane (BMP), except U+0000: ASCII: U+0001 .. U+007F Extended: U+0080 .. U+FFFF ASCII NUL (U+0000) and supplementary characters (U+10000 and higher) are not permitted in quoted or unquoted identifiers. Identifiers may begin with a digit but unless quoted may not consist solely of digits. Database, table, and column names cannot end with space characters." Rules culled from this list of allowable characters: (1) ASCII: [0-9,a-z,A-Z$_] (basic Latin letters, digits 0-9, dollar, underscore) (2) Full Unicode Basic Multilingual Plane (BMP) except U+0000 (3) Identifiers may begin with a digit but unless quoted may not consist solely of digits. (4) Database, table, and column names cannot end with space characters. Interpretation: Re: ASCII: See ASCII character chart from widipedia article on ASCII (https://en.wikipedia.org/wiki/ASCII#/media/File:USASCII_code_chart.png) shows that between 0000 (null character) and 007F (delete character) is the entire ASCII chart, meaning all 15 cols x 7 rows are legal to use in column names, which clearly contradicts the rules that only punctuation allowed is "$" and "_". For example, "#" is located at _4 (x axis) 2 (y axis) and has identifiers "0023" / "35". But "#" it appears to be excluded by the ascii rules anyway (it's punctuation that's not dollar or underscore), so it's not clear whether ASCII columns can include the "#". (BTW many ASCII charts are labeled differently and you cannot find correlation with any " _ _ _" numerical index so look for variations in table indexing if you can't find anything close to '0000' format.) Re: UNICODE BMP: is indexed by U+_ _ _ _ so rules are easier to implement. For example, "#" appears in the full BMP as U+0023 so it should be OK to use (U+000 is the "null" character, BTW). So it also appears that special characters allowed for column names varies based on collation in your database; UTF collations offer more options for special characters to be used in column names, another reason to prefer utf collation in your database, in addition to its ability to include more international characters, something more valuable when constructing a website with international membership. Hãy xuống và bẩn với MySQL bằng cách tìm hiểu những điều cơ bản của cú pháp SQL và các chức năng hữu ích để duy trì bảng và tính toàn vẹn. Đoạn trích này là từ phiên bản thứ 2 của "MySQL". Thích bài viết này? Chúng tôi đề nghị Sự lưu loát với SQL là cần thiết để giao tiếp hiệu quả với máy chủ MySQL, bởi vì đó là ngôn ngữ mà nó hiểu. Ví dụ: khi bạn sử dụng một chương trình như máy khách MySQL, nó hoạt động chủ yếu như một phương tiện để bạn gửi các câu lệnh SQL đến máy chủ để được thực thi. Bạn cũng phải biết SQL nếu bạn viết các chương trình sử dụng giao diện MySQL được cung cấp bởi ngôn ngữ lập trình của bạn vì giao diện có chức năng như là phương tiện cho phép bạn giao tiếp với máy chủ bằng cách gửi các câu lệnh SQL cho nó. Chương 1, "Bắt đầu với MySQL và SQL", đã giới thiệu một giới thiệu hướng dẫn về nhiều khả năng của MySQL. Chương này xây dựng dựa trên tài liệu đó để đi sâu vào chi tiết hơn về một số lĩnh vực của SQL được thực hiện bởi MySQL. Nó thảo luận về cách tham khảo các yếu tố của cơ sở dữ liệu, bao gồm các quy tắc đặt tên và các ràng buộc độ nhạy của trường hợp áp dụng. Nó cũng mô tả nhiều câu lệnh SQL quan trọng hơn được sử dụng cho các loại hoạt động sau:
Các câu lệnh SQL của MySQL có thể được nhóm thành một số loại rộng; Bảng 3.1 liệt kê một số câu lệnh đại diện cho mỗi. Trong một số trường hợp, một chương trình tiện ích có sẵn cung cấp giao diện dòng lệnh cho một câu lệnh. Ví dụ: MySQLshow cho phép các hoạt động hiển thị được thực hiện từ dòng lệnh. Chương này chỉ ra những tương đương như vậy khi thích hợp. Một số tuyên bố trong bảng không được đề cập ở đây vì chúng được thảo luận phù hợp hơn trong các chương khác. Ví dụ, các tuyên bố hành chính cấp và thu hồi để thiết lập các đặc quyền của người dùng được xử lý trong Chương 11, "Quản trị chung MySQL." Chương 12, "Bảo mật", cung cấp thêm chi tiết về những đặc quyền có sẵn và những gì họ cho phép. Cú pháp cho tất cả các câu lệnh SQL được thực hiện bởi MySQL được liệt kê trong Phụ lục D, "Tham chiếu cú pháp SQL." Ngoài ra, bạn nên tham khảo hướng dẫn tham khảo MySQL để biết thêm thông tin, đặc biệt là những thay đổi được thực hiện trong các phiên bản gần đây của MySQL. Bảng 3.1 Các loại câu lệnh SQL được hỗ trợ bởi MySQL
Phần cuối cùng của chương mô tả những gì MySQL không bao gồm cả, đó là những tính năng mà nó thiếu. Đây là những khả năng được tìm thấy trong một số cơ sở dữ liệu khác nhưng không phải trong MySQL. Các tính năng như vậy bao gồm kích hoạt, quy trình lưu trữ và chế độ xem. Những thiếu sót này có nghĩa là MySQL không phải là hệ thống cơ sở dữ liệu "thực tế"? Một số người nghĩ như vậy, nhưng để đáp ứng, tôi sẽ đơn giản quan sát rằng việc thiếu các khả năng này trong MySQL đã không ngăn được số lượng lớn người sử dụng nó. Đó có lẽ là do đối với nhiều hoặc hầu hết các ứng dụng, những tính năng đó không quan trọng. Tôi cũng nên chỉ ra rằng tập hợp các tính năng bị thiếu từ MySQL tiếp tục thu nhỏ theo thời gian. Đối với phiên bản đầu tiên của cuốn sách này, danh sách các tính năng còn thiếu bao gồm các giao dịch, phần phụ, khóa nước ngoài và tính toàn vẹn tham chiếu. Một lượng đáng kể tiến bộ đã được thực hiện trong việc cải thiện MySQL kể từ đó, và tất cả các khả năng đó đã được thêm vào bây giờ. Các kích hoạt, quy trình lưu trữ và quan điểm được lên lịch để thực hiện trong tương lai. Các quy tắc đặt tên MySQLHầu như mọi câu lệnh SQL đều đề cập đến một số cách cho cơ sở dữ liệu hoặc các yếu tố cấu thành của nó. Phần này mô tả các quy tắc cú pháp để tham khảo cơ sở dữ liệu, bảng, cột, chỉ mục và bí danh. Tên phải tuân theo các cân nhắc về độ nhạy của trường hợp, cũng được mô tả. Đề cập đến các yếu tố của cơ sở dữ liệuKhi bạn sử dụng tên để chỉ các yếu tố của cơ sở dữ liệu, bạn bị hạn chế bởi các ký tự bạn có thể sử dụng và độ dài mà tên có thể có. Hình thức của tên cũng phụ thuộc vào bối cảnh mà bạn sử dụng chúng. Một yếu tố khác ảnh hưởng đến các quy tắc đặt tên là máy chủ có thể được bắt đầu ở các chế độ đặt tên khác nhau.
Độ nhạy của trường hợp trong các câu lệnh SQLCác quy tắc độ nhạy của trường hợp trong các câu lệnh SQL khác nhau cho các phần khác nhau của câu lệnh và cũng phụ thuộc vào những gì bạn đề cập và hệ điều hành của máy mà máy chủ đang chạy:
Bất kể có hay không một cơ sở dữ liệu hay tên bảng có nhạy cảm với hệ thống của bạn hay không, bạn phải tham khảo nó bằng cách sử dụng cùng một chữ cái trong suốt một truy vấn nhất định. Điều đó không đúng với các từ khóa SQL, tên hàm hoặc tên cột và chỉ mục, tất cả đều có thể được đề cập theo kiểu chữ viết nhật ký khác nhau trong suốt một truy vấn. Đương nhiên, truy vấn sẽ dễ đọc hơn nếu bạn sử dụng một chữ cái nhất quán thay vì kiểu "tiền chuộc" (chọn tên từ ...). Làm thế nào để bạn đặt tên cho một bảng trong mysql?Các quy tắc chung - Các quy ước đặt tên bằng cách sử dụng chữ thường sẽ giúp gõ tốc độ, tránh sai lầm vì MySQL nhạy cảm. Không gian được thay thế bằng dấu gạch dưới - sử dụng không gian giữa các từ không được khuyến khích. Các số không dành cho tên - trong khi đặt tên, điều cần thiết là nó chỉ chứa bảng chữ cái tiếng Anh alpha.Using lowercase will help speed typing, avoid mistakes as MYSQL is case sensitive. Space replaced with Underscore — Using space between words is not advised. Numbers are not for names — While naming, it is essential that it contains only Alpha English alphabets.
Các quy tắc để đặt tên cho các bảng và cột là gì?Mỗi tên bảng và tên cột sẽ bắt đầu bằng chữ viết hoa ... Tên khóa chính sẽ sử dụng cú pháp "PK_" .. Mỗi tên khóa chính phải có tiền tố PK_ của PK_ .. Chữ cái đầu tiên của một cái tên bảng phải được viết hoa .. Quy ước đặt tên cho các bảng là gì?Khi đặt tên bảng, bạn có hai tùy chọn - để sử dụng số ít cho tên bảng hoặc sử dụng số nhiều.Đề nghị của tôi sẽ là luôn luôn đi với tên trong số ít.Nếu bạn đặt tên các thực thể đại diện cho sự thật trong thế giới thực, bạn nên sử dụng danh từ.Đây là những bảng như nhân viên, khách hàng, thành phố và quốc gia.to use the singular for the table name or to use a plural. My suggestion would be to always go with names in the singular. If you're naming entities that represent real-world facts, you should use nouns. These are tables like employee, customer, city, and country.
Những ký tự nào được phép trong tên cơ sở dữ liệu MySQL?Cơ sở dữ liệu, bảng, chỉ mục, cột và tên bí danh. |