Trang chủ → Hướng dẫn cài đặt và nâng cấp → HelpSpot 4 - Cài đặt & thiết lập → Tạo cơ sở dữ liệu UTF-8
mysql
Cơ sở dữ liệu MySQL cho HelpSpot phiên bản 4 nên mặc định là công cụ lưu trữ InnoDB và đối chiếu và bộ ký tự UTF-8mb4
Đối với MySQL 5. 5. 3+, chúng ta có thể sử dụng bộ ký tự utf8mb4, đây là cách triển khai đầy đủ hơn của UTF-8
CREATE DATABASE helpspot_db2 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Lưu ý rằng bạn nên thay đổi tên cơ sở dữ liệu [helpspot_db] nếu cần cho trường hợp sử dụng của mình. Bạn cũng có thể cần chỉ định một người dùng cụ thể cho cơ sở dữ liệu
Máy chủ SQL
SqlServer sử dụng UTF16 theo mặc định và có thể không cần hướng dẫn thêm về cách sử dụng cơ sở dữ liệu thân thiện với UTF-8 khi tạo cơ sở dữ liệu mới để sử dụng với HelpSpot. Người dùng Windows Installer sẽ thấy cơ sở dữ liệu mới được tạo cho bạn và vì vậy hầu hết người dùng sẽ không cần phải lo lắng về việc tạo cơ sở dữ liệu mới
Quá trình chuyển đổi sẽ được yêu cầu để chuyển đổi dữ liệu cơ sở dữ liệu hiện có, có thể không được lưu trong mã hóa UTF-8
Làm việc với Bộ ký tự [Unicode hoặc Latin-1] và mã hóa [UTF-8 hoặc ISO-8859-1] của ứng dụng của bạn có thể gặp khá nhiều vấn đề. Một cách bạn có thể gặp sự cố là khi người dùng Windows sử dụng notepad để chỉnh sửa tệp, vì nó có thể gây rối với mã hóa tệp và gây ra các sự cố "vô hình" khó giải quyết nếu không có kiến thức chuyên môn.
cá nhân tôi đã có. htaccess đã ngừng hoạt động do notepad gây rối với mã hóa các tệp của tôi. Nếu bạn đang dùng Windows, bạn nên sử dụng một trình soạn thảo khác, chẳng hạn như Visual Studio Code, Eclipse hoặc Notepad++
Việc đảm bảo trang web của bạn – và các trình duyệt tương tác với nó – luôn sử dụng mã hóa ký tự mà bạn dự định, có thể khó khăn. Đối với những người quan tâm, tôi đã bao gồm một số thông tin thêm về điều này sau trong bài viết
Dành cho những ai biết chi tiết
CREATE DATABASE name_of_new_database CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Tại sao nên sử dụng UTF-8
UTF-8 được khuyên dùng cho web vì nó hỗ trợ tất cả các ký tự unicode và do đó cho phép bạn sử dụng các ký tự dành riêng cho ngôn ngữ mà không phải sử dụng thay thế thực thể HTML. Nó cũng tránh được các sự cố với đầu vào của người dùng trên các biểu mẫu HTML, cũng như các cách xử lý ký tự khác nhau của trình duyệt nằm ngoài bất kỳ mã hóa ký tự "giới hạn" nào mà bạn có thể sử dụng – có thể là Latin-1 - ISO-8859-1]
.Nếu bạn sử dụng UTF-8 và bạn vẫn gặp sự cố với các ký tự không hiển thị chính xác, hãy ghi nhớ, nếu có lỗi khớp giữa mã hóa dữ liệu trong cơ sở dữ liệu, kết nối cơ sở dữ liệu hoặc tệp tĩnh của bạn và mã hóa được chỉ định . Một số người không hiểu vấn đề này và vì vậy họ chỉ khuyên sử dụng các thực thể HTML như
- æ = æ
- ø = ø
- å = å
Điều này không giải quyết được vấn đề. Bạn vẫn có một trận đấu bỏ lỡ. Điều này nên được cố định
Không phải lúc nào cũng đơn giản như tạo cơ sở dữ liệu với UTF-8. Nếu bạn có một biểu mẫu trong trang HTML, bạn sẽ cần đảm bảo rằng trang được phân phối bằng bộ ký tự phù hợp trong tiêu đề kiểu nội dung HTTP; . Đối với nội dung HTML, tiêu đề sẽ trông như thế này
Content-Type: text/html; charset=utf-8
Với PHP, bạn có thể đặt Loại nội dung bằng chức năng tiêu đề như thế này
header['Content-Type: text/html; charset=utf-8'];
Ghi chú. Việc định cấu hình máy chủ của bạn để sử dụng UTF-8 làm mã hóa ký tự mặc định có thể dễ dàng hơn
Ngoài ra, bạn cũng có thể sử dụng thẻ meta tương đương meta HTTP trong tệp HTML của mình
Điều này không được khuyến khích, vì nó có thể khuyến khích một tác giả lười biếng cấu hình mọi thứ không chính xác. Nó cũng bị bỏ qua nếu có tiêu đề HTTP, vì vậy nó không thể được sử dụng để ghi đè lên tiêu đề
Cuối cùng, bạn cũng nên đảm bảo kết nối cơ sở dữ liệu của mình sử dụng UTF8;
Bạn đang xem tài liệu TeamCity 7. x, đây không phải là phiên bản TeamCity được phát hành gần đây nhất. Vui lòng tham khảo danh sách để chọn phiên bản khác
MySQL hỗ trợ hai loại bộ ký tự UTF8. utf8 và utf8mb4
Bảng ký tự utf8 của MySQL chứa các ký tự từ , còn được gọi là BMP — đó là một tập hợp con các ký tự UTF8 có độ dài từ 1 đến 3 byte. Các ký tự 4 byte không được đưa vào bảng ký tự này và khi một người cố gắng lưu trữ các ký tự đó vào bảng MySQL, sẽ xảy ra lỗi Giá trị chuỗi không chính xác
Bảng ký tự utf8mb4 của MySQL là siêu bộ của BMP và cũng chứa các ký tự 4 byte. Bảng ký tự này được hỗ trợ kể từ MySQL 5. 5. 3. Để sử dụng bộ ký tự này với các ứng dụng java, máy chủ MySQL phải được định cấu hình với tùy chọn character_set_server=utf8mb4 và KHÔNG sử dụng thuộc tính kết nối thecharacterEncoding. Xem http. // nhà phát triển. mysql. com/doc/refman/5. 5/en/connector-j-reference-charsets. html để biết thêm chi tiết
Vì vậy, nên sử dụng MySQL phiên bản 5. 5. 3 trở lên và trình kết nối MySQL/J [trình điều khiển jdbc] phiên bản 5. 1. 18 trở lên và sử dụng bộ ký tự utf8mb4