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

Rails3 không thể lưu 'ñ' vào Oracle 11g

Bạn phải phân biệt hai cài đặt nls khác nhau

  • cái bên ngoài - được xác định bởi biến môi trường NLS_LANG trong ứng dụng của bạn. Điều này xác định biểu diễn chuỗi nội bộ của bạn khi bạn gửi dữ liệu đến thư viện máy khách OCI.

  • nội bộ. Đây là bộ ký tự được Oracle sử dụng để lưu trữ dữ liệu của bạn trên đĩa.

Cố gắng thực thi

select r.module, t.*
from v$sesssion_connection_info t
join v$session r on (r.sid = t.sid and t.serial# = r.serial#)
where r.sid = <your ruby connection SID>;

select * from nls_database_parameters;
select * from nls_instance_parameters;

Nếu nó cho thấy rằng bạn đang sử dụng một cái gì đó như US7ASCII hoặc ISO8859P1 thì Oracle chấp nhận ký tự của bạn và chuyển đổi nó thành bộ ký tự đích (bằng cách bỏ dấu hoặc bằng cách thay thế bằng '?').




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. java.sql.SQLException:Io ngoại lệ:Đường ống bị hỏng làm thế nào để khôi phục mà không cần khởi động lại?

  2. php oci_bind_by_name float thành số

  3. Lỗi cú pháp Thiếu từ khóa trong câu lệnh trường hợp trong mệnh đề WHERE

  4. Biểu thức chính quy (RegEx) cho IPv6 Tách biệt với IPv4

  5. thực hiện trình tự thay đổi ngay lập tức không hoạt động