sql >> Databáze >  >> RDS >> Oracle

Rails3 nemůže uložit 'ñ' do Oracle 11g

Musíte rozlišovat dvě různá nastavení nls

  • externí - definovaný proměnnou prostředí NLS_LANG ve vaší aplikaci. To určuje vaši interní reprezentaci řetězců, když posíláte data do klientské knihovny OCI.

  • ten vnitřní. Je to znaková sada, kterou Oracle používá k ukládání vašich dat na disk.

Zkuste provést

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;

Pokud ukazuje, že používáte něco jako US7ASCII nebo ISO8859P1, pak Oracle vaši postavu přijme a převede ji na cílovou znakovou sadu (buď odstraněním přízvuku nebo nahrazením '?').




  1. Jak počítat rozdíl v datech kromě víkendů a svátků v MySQL

  2. org.hibernate.MappingException:mapování vlastností má nesprávný počet sloupců v entitě ENUM

  3. SQL Server ON DELETE Trigger

  4. Gridview v aktuálním kontextu neexistuje