"QUỐC GIA" trong trường hợp này có nghĩa là các ký tự đặc trưng cho các quốc tịch khác nhau. Các ngôn ngữ Viễn đông đặc biệt có nhiều ký tự đến nỗi một byte không đủ chỗ để phân biệt tất cả. Vì vậy, nếu bạn có ứng dụng chỉ có tiếng Anh (ascii) hoặc trường chỉ có tiếng Anh , bạn có thể sử dụng các loại CHAR và VARCHAR cũ hơn, chỉ cho phép một byte trên mỗi ký tự.
Điều đó nói rằng, hầu hết thời gian bạn nên sử dụng NCHAR / NVARCHAR. Ngay cả khi bạn không nghĩ rằng mình cần hỗ trợ (hoặc có khả năng hỗ trợ) nhiều ngôn ngữ trong dữ liệu của mình, ngay cả các ứng dụng chỉ có tiếng Anh cũng cần có khả năng xử lý hợp lý các cuộc tấn công bảo mật bằng cách sử dụng các ký tự tiếng nước ngoài.
Theo ý kiến của tôi, về nơi duy nhất mà các loại CHAR / VARCHAR cũ hơn vẫn được ưu tiên là cho các mã nội bộ chỉ ascii được tham chiếu thường xuyên và dữ liệu trên các nền tảng như Máy chủ Sql hỗ trợ sự phân biệt - dữ liệu sẽ tương đương với một mã <> enum bằng ngôn ngữ khách như C ++ hoặc C #.