rules:charset
Khác biệt
Đây là những khác biệt giữa hai phiên bản của trang.
Phiên bản trước của cả hai bênPhiên bản trướcPhiên bản sau | Phiên bản trước | ||
rules:charset [2015/10/31 14:43] – hongoctrien | rules:charset [2015/11/14 10:28] (hiện tại) – vuthao | ||
---|---|---|---|
Dòng 5: | Dòng 5: | ||
**1. Trường hợp 1:** '' | **1. Trường hợp 1:** '' | ||
- | Độ dài của chỗi không được vượt quá **1000 / 4 = 250** ký tự. Nguyên nhân mỗi kỹ tự sẽ sử dụng 4 byte (utf8_general_ci chỉ sử dụng 3 byte ). Do đó, trường hợp này, trường alias chỉ được sử dụng tối đa 250 ký tự. | + | Ví dụ, có bảng |
+ | |||
+ | <code php> | ||
+ | nv4_vi_news_categories ( | ||
+ | id mediumint(8) unsigned NOT NULL AUTO_INCREMENT, | ||
+ | title varchar(250) NOT NULL, | ||
+ | alias varchar(250) NOT NULL, | ||
+ | description mediumtext NOT NULL, | ||
+ | status tinyint(1) unsigned NOT NULL DEFAULT ' | ||
+ | PRIMARY KEY (id), | ||
+ | UNIQUE KEY alias (alias) | ||
+ | ) ENGINE=MyISAM"; | ||
+ | </ | ||
+ | |||
+ | Độ dài của chỗi không được vượt quá **1000 / 4 = 250** ký tự. Nguyên nhân mỗi kỹ tự sẽ sử dụng 4 byte (utf8_general_ci chỉ sử dụng 3 byte ). Do đó, trường hợp này, trường | ||
**2. Trường hợp 2:** '' | **2. Trường hợp 2:** '' | ||
- | Nếu catid sử dụng smallint(5) thì alias lúc này được sử dụng tối đa (1000- 5) /4 = 249.6875 (làm tròn 249) ký tự. Do đó, alias trong trường hợp này chỉ được sử dung tối đa 249 ký tự. | + | <code php> |
+ | nv4_vi_news_rows ( | ||
+ | id mediumint(8) unsigned NOT NULL AUTO_INCREMENT, | ||
+ | catid smallint(5) unsigned NOT NULL, | ||
+ | title varchar(249) NOT NULL, | ||
+ | alias varchar(249) NOT NULL, | ||
+ | description mediumtext NOT NULL, | ||
+ | status tinyint(1) unsigned NOT NULL DEFAULT ' | ||
+ | PRIMARY KEY (id), | ||
+ | UNIQUE KEY alias_catid(alias, | ||
+ | ) ENGINE=MyISAM"; | ||
+ | </ | ||
+ | |||
+ | Nếu trường **catid** sử dụng | ||
**3. Trường hợp 3:** '' | **3. Trường hợp 3:** '' | ||
- | Nếu alias1 sử dụng varchar(50) thì alias2 lúc này được sử dụng tối đa **(1000 - 50*4) /4 = 200** ký tự. Alias trong trường hợp này được sử dụng tối đa 200 ký tự. | + | <code php> |
+ | nv4_vi_news_rows ( | ||
+ | id mediumint(8) unsigned NOT NULL AUTO_INCREMENT, | ||
+ | catid smallint(5) unsigned NOT NULL, | ||
+ | title varchar(200) NOT NULL, | ||
+ | alias1 varchar(50) NOT NULL, | ||
+ | alias2 varchar(200) NOT NULL, | ||
+ | description mediumtext NOT NULL, | ||
+ | status tinyint(1) unsigned NOT NULL DEFAULT ' | ||
+ | PRIMARY KEY (id), | ||
+ | UNIQUE alias1_alias2(alias1, | ||
+ | ) ENGINE=MyISAM"; | ||
+ | </ | ||
+ | |||
+ | Nếu alias1 sử dụng | ||
Dựa trên những trường hợp này, trong quá trình thiết kế CSDL, nếu bảng có sử dụng các ràng buộc UNIQUE hãy sử dụng những hướng dẫn bên trên để code của bạn họat động tốt với các website NukeViet sử dụng Utf8mb4. | Dựa trên những trường hợp này, trong quá trình thiết kế CSDL, nếu bảng có sử dụng các ràng buộc UNIQUE hãy sử dụng những hướng dẫn bên trên để code của bạn họat động tốt với các website NukeViet sử dụng Utf8mb4. | ||
+ | |||
+ | Tham khảo: | ||
+ | https:// |
rules/charset.txt · Sửa đổi lần cuối: 2015/11/14 10:28 bởi vuthao