Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 4/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
IOS unidac Türkçe karakter sorunu
#1
Arkadaşlar merhaba unidac ile mssql den veri çekerken android de normal ama ios da türkçe karakter sorunu var. Varmıdır bu kompenenti kullanan
Cevapla
#2
Merhaba,
Türkçe karakter sorunu yaşadığınız tablo alanlarının karakter seti ile Connection nesnesinin karakter seti aynı olmalıdır. 
Tablo yapısının alan tiplerinde bir sorun yoksa; UniConnection nesnesini açmadan önce (Connect metodundan önce) veya OnBeforeConnect olayına 
aşağıdaki kodu yazarak, sorunu düzeltebilirsiniz.
 
procedure TForm1.UniConnection1BeforeConnect(Sender: TObject);
begin
  UniConnection1.SpecificOptions.Values['CharSet'] := 'UTF8'; // veya 'latin5'
end;
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#3
(25-11-2016, Saat: 16:02)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba,
Türkçe karakter sorunu yaşadığınız tablo alanlarının karakter seti ile Connection nesnesinin karakter seti aynı olmalıdır. 
Tablo yapısının alan tiplerinde bir sorun yoksa; UniConnection nesnesini açmadan önce (Connect metodundan önce) veya OnBeforeConnect olayına 
aşağıdaki kodu yazarak, sorunu düzeltebilirsiniz.
 
procedure TForm1.UniConnection1BeforeConnect(Sender: TObject);
begin
  UniConnection1.SpecificOptions.Values['CharSet'] := 'UTF8'; // veya 'latin5'
end;

mysql de bu yöntem işe yarıyor ama MSSQL de aşağıdaki hatayı alıyorum
   
Cevapla
#4
(25-11-2016, Saat: 17:32)hassur Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(25-11-2016, Saat: 16:02)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba,
Türkçe karakter sorunu yaşadığınız tablo alanlarının karakter seti ile Connection nesnesinin karakter seti aynı olmalıdır. 
Tablo yapısının alan tiplerinde bir sorun yoksa; UniConnection nesnesini açmadan önce (Connect metodundan önce) veya OnBeforeConnect olayına 
aşağıdaki kodu yazarak, sorunu düzeltebilirsiniz.
 
procedure TForm1.UniConnection1BeforeConnect(Sender: TObject);
begin
  UniConnection1.SpecificOptions.Values['CharSet'] := 'UTF8'; // veya 'latin5'
end;

mysql de bu yöntem işe yarıyor ama MSSQL de aşağıdaki hatayı alıyorum

CharSet tanımının ön kısmına aşağıdaki gibi SQL server takısını getirerek tekrar deneyin.

procedure TForm1.UniConnection1BeforeConnect(Sender: TObject);
begin
  UniConnection1.SpecificOptions.Values['SQL server.CharSet'] := 'UTF8'; //veya win1254
end;

Yukarıdaki kod yapısı olmaz ise, karakter setini UniCode (WideString) olarak set edip, deneyin.

procedure TForm1.UniConnection1BeforeConnect(Sender: TObject);
begin
 UniConnection1.SpecificOptions.Values['UseUnicode'] := 'True';
end;
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#5
UniConnection1.SpecificOptions.Values['SQL server.CharSet'] := 'UTF8'; //veya win1254

bunu denediğimde sonuç değişmedi aynı hatayı alıyorum



Yukarıdaki kod yapısı olmaz ise, karakter setini UniCode (WideString) olarak set edip, deneyin.

procedure TForm1.UniConnection1BeforeConnect(Sender: TObject);
begin
 UniConnection1.SpecificOptions.Values['UseUnicode'] := 'True';
end;



bunu denediğimde uygulama hiç açılmadan kapanıyor.
Cevapla
#6
Veri tabanı tablo alanlarında; Metinsel tipte olan alanların tipinin nvarchar olup olmadığını kontrol edin.
DB'nizin SQL script yapısını paylaşma imkanınız varsa, konuya daha hızlı çözüm bulabiliriz.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#7
Tablo nvarchar(201) olduğuna eminim. Anlamadığım win32 ve android de normal çalışırken ios da türkçe karakterlerde sorun oluyor. Bir enteresan durum ise dizayn anında normal çalışması ama debug edip simulator de türkçe karaker sorunu olması enteresan. Simulatorde sql dışında diğer nesnelerde herhangi bir sorun yok yani listview de türkçe karakter kullanıyorum.
Cevapla
#8
(26-11-2016, Saat: 11:30)hassur Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlTablo nvarchar(201) olduğuna eminim. Anlamadığım win32 ve android de normal çalışırken ios da türkçe karakterlerde sorun oluyor. Bir enteresan durum ise dizayn anında normal çalışması ama debug edip simulator de türkçe karaker sorunu olması enteresan. Simulatorde sql dışında diğer nesnelerde herhangi bir sorun yok yani listview de türkçe karakter kullanıyorum.

Mac OS X dili Türkçe mi? Değilse işletim sisteminizin diline Türkçe ekleyin ve geçerli dili Türkçe yapın.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#9
MAC OS Türkçe. Alan eğer ntext ise sorun olmuyor ancak bu alan tipini değiştirmem mümkün değil ticari bir paket programdan veri alıyorum. Kendi çözümümü ürettim ancak bu kesin çözüm değil ve ciddi bir performans sorunu yaşatıyor. Bir fonksiyon yaptım gelen değer içerinde bozuk karakter varsa bunlar fonksiyon sayesinde türkçeye çeviriyorum. Tekrar sölüyorum bunu geçici bir çözüm olarak ürettim. Hala bu konuya çözüm arıyor olacağım.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Question [ ÇÖZÜLDÜ ] SQLİTE bağlantı sorunu BY-HAYALET 9 245 10-07-2018, Saat: 12:41
Son Yorum: BY-HAYALET
  Android APİ sorunu - Google Play BY-HAYALET 18 576 09-07-2018, Saat: 09:47
Son Yorum: quiet1day
Question karakter değiştirme-eş zamanlı ? BY-HAYALET 9 194 08-07-2018, Saat: 13:13
Son Yorum: cinarbil
  S9 Plus Donma Sorunu narkotik 13 301 16-06-2018, Saat: 19:00
Son Yorum: engerex
  AVD Manager Açılışta Ömür Yeme Sorunu? hyperxman 7 199 05-06-2018, Saat: 19:27
Son Yorum: codder71



Konuyu Okuyanlar: 1 Ziyaretçi