NHibernate va Oracle bilan Unicode satrlari

Oracle-ga ulanish uchun NHibernate uchun quyidagi konfiguratsiyadan foydalanaman. Sinflardan birida men unicode satrini saqlayapman, masalan, 日本語 (rìnbnu). Ustun uchun ma'lumotlar maydoni NVARCHAR2() dir, ammo ma'lumotlarni olishda qiymat buzilganligini ko'rsatmoqda ??? (??). Qaerdadir men kodlashni yo'qotyapman, lekin qayerda ekanligimni yo'qotyapman. Har qanday fikr bormi?

  <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
  <property name="connection.driver_class">NHibernate.Driver.OracleDataClientDriver</property>
  <property name="connection.connection_string_name">Oracle</property>
  <property name="show_sql">true</property>
  <property name="dialect">NHibernate.Dialect.Oracle10gDialect</property>
  <property name="query.substitutions">true 1, false 0, yes 'Y', no 'N'</property>
  <property name="cache.use_second_level_cache">true</property>
  <property name="adonet.batch_size">30</property>
  <property name="cache.provider_class">NHibernate.Caches.SysCache.SysCacheProvider, NHibernate.Caches.SysCache</property>
  <property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property>
</session-factory>


person Ray Booysen    schedule 27.09.2011    source manba
comment
Ma'lumotni olganingizda yo'qolganligini qanday aniqlash mumkin? Buni tekshirishning eng ishonchli usuli shrift muammosini istisno qilish uchun bayt massivi tanlangan kodlashda (UTF-8 deb o'ylayman) mos kelishini ko'rishdir.   -  person jishi    schedule 27.09.2011
comment
PL/SQL va Linqpad bilan ikkalasini tanlash buzilgan satrlarni ko'rsatadi. Men hali bayt-bayt taqqoslash qilmaganman, lekin men (ehtimol noto'g'ri) ushbu vositalardan biri to'g'ri ishlaydi deb o'yladim.   -  person Ray Booysen    schedule 28.09.2011
comment
Potentsial bog'liq savol: stackoverflow.com/questions/1192281/   -  person Ray Booysen    schedule 28.09.2011


Javoblar (2)


NHibernate dozasi NVarChar2 dan foydalanilmaydi. Agar siz NHibernate NVarchar2 dan foydalanishini istasangiz, o'zingizning ma'lumotlar bazasi dialektingizni yozishingiz kerak.

person Burim Hajrizaj    schedule 27.02.2012

Maxsus dialekt yozishning hojati yo'q, foydalanuvchi turi etarli. Bu savolga javobimni ko'ring: https://stackoverflow.com/a/61792204/5168579

person Robert J    schedule 14.05.2020