Ado - Oracle - Provider - Türkçe Karakter

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
destiny24
Üye
Mesajlar: 131
Kayıt: 22 Tem 2010 08:42

Ado - Oracle - Provider - Türkçe Karakter

Mesaj gönderen destiny24 » 23 Şub 2014 12:59

Arkadaşlar Merhaba,

Ado nun bileşenleri ile Oracle bağlantısı kuruyorum. 2 tane provider kullanabiliyorum. Bir tanesi 1-) microsoft oledb for oracle diğeri ise 2-) oracle ole db.
1. provider ile bağlandığımda, çalıştırdığım bir çok sql de unspecific error hatası alıyorum. ( örnek:\ sql cümlesinde JOIN geçiyorsa ). ama bu hatalı olan sorguları Sql Navigator de ve diğer provider i kullandığımda çalıştırabiliyorum.
2. provider ı kullandığımda ise, tüm Oracle Client larda CharacterSet i türkçe destekli ayarlamama rağmen türkçe karakter hatası alıyorum. Burada da şöyle bir tuhaflık var. örnek sorgumuz "select * from CATA_TEMPLATE" olsun. bu tablo da bir update çalıştıracağım zaman "UPDATE CATA_TEMPLATE set TE_NAME = 'ııı iii ööö ğğğ üüü şşş' Where RECID = 1" böyle bir sql'i query.ExecSql; ile çalıştırdığımda veri tabanına türkçe karakterler bozulmuş şekilde atılıyor. (ı ve ş harfleri)
ancak query'nin edit ve Post metodlarını kullanarak değeri değiştirdiğimde ise türkçe karakterler bozulmadan kayıt ediliyor.

şimdi anlayamadığım noktalar
1.) Client'ın mı, Server'ın mı yoksa Adonun karakter set'ini kullanıyor.
2.) Ado'nun 2. Provider ile türkçe karakter desteği yok desem, Listelerken düzgünce listeliyor, Post metodu ile düzgünce update ediyor.
3.) Post metodu ile ExecSql metodu arasında nasıl bir karakter seti farkı var ki bir tanesi düzgün update ediyor bir tanesi karakterleri bozuyor.
4.) Başka hangi free bileşenler ile başarılı bir bağlantı ve işlemler gerçekleştirebilirim.?

Bunların yanıtlarını bulmamda yardımcı olabilir misiniz.?

Cevapla