Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Tại sao Oracle hiển thị ??? cho các ký tự đặc biệt như åäö

Hầu hết có thể là do sự không khớp giữa bộ ký tự NLS dành riêng cho từng ngôn ngữ bộ ký tự cơ sở dữ liệu . Hoặc nếu không, NLS_LANG giá trị không được đặt chính xác trong biến môi trường OS .

Hãy xem Tại sao các giá trị rác / ký tự đặc biệt / dấu chấm hỏi lại hiển thị trên ứng dụng khách của tôi?

  1. Tập ký tự ứng dụng khách của bạn không khớp với tập ký tự cơ sở dữ liệu.

Bạn có thể so sánh giữa:

-- locale-specific characterset

select value
from   v$nls_parameters 
where  parameter = 'NLS_CHARACTERSET';


-- database characterset

select value
from   nls_database_parameters 
where  parameter = 'NLS_CHARACTERSET';

Nếu bạn thấy không khớp giữa cả hai, hãy đặt bộ ký tự NLS dành riêng cho ngôn ngữ địa phương thành bộ ký tự cơ sở dữ liệu.

  1. Nếu các tập ký tự trên khớp nhau, thì bạn cần đặt giá trị NLS_LANG trong biến môi trường OS.

Đối với hệ điều hành Windows, định dạng là:

[NLS_LANGUAGE]_[NLS_TERRITORY].[NLS_CHARACTERSET]

Làm theo hướng dẫn trong tài liệu liên quan đến việc thiết lập NLS_LANG:Đặt Biến Môi trường NLS_LANG cho Cơ sở dữ liệu Oracle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để lấy thông tin về chủ sở hữu chỉ mục và bảng trong Oracle?

  2. Cập nhật câu lệnh với tham gia bên trong trên Oracle

  3. Chèn hàng loạt vào Oracle bằng .NET

  4. Di chuyển Cơ sở dữ liệu Oracle từ AWS EC2 sang AWS RDS, Phần 2

  5. Xây dựng lại DB ở chế độ chờ