E_fail hatası (MySQL ODBC 5.1 )

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
deltas
Üye
Mesajlar: 358
Kayıt: 06 Mar 2004 01:08
Konum: Malatya...
İletişim:

E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen deltas » 27 Mar 2009 08:06

Merhaba arkadaşlar. Sorunum mysql ado ile sorgu çekerken bu hatayı alıyorum. Sistem özelliklerim aşşağıdaki gibi
İşletim sistemi: win xp Pro SP3 Tüm güncellemeler yapılmış.
Mysql: MySQL Server 6.0 alpha
ODBC Driver : MySQL ODBC 5.1
Delphi Sürüm : 7.0 ,2006 ,2007, 2009
Mysql 'i kurarken developer machine durumu seçili, dil seçeneğinde ise default latin5 (UTF8 içinde denedim) aktif durumda .
Bağlantı yaparken Tadoconnectin 'daki connection string

Kod: Tümünü seç

Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Data Source=mysql;Extended Properties="DSN=mysql;UID=root;";Initial Catalog=vsd
Adoquery'i buna bağlayıp basit bir sorgu çektiğimde Türkçe karekter içeriyorsa "veri sağlayıcısı veya diğer bir hizmet E_FAIL verdi" şeklinde bir hata alıyorum. Sorun neredir sizce? Birde 6.0 sürümünü ve odbc 5.1.5 delphi ile birlikte kullanan arkadaş var mı? Bu şekilde bir hata ile karşılaştı mı?
Teşekkür ederim.
Nice İnsanlar gördüm üstünde elbise yok;
Nice elbiseler gördüm içinde insan yok.

Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 30 Eyl 2007 11:02
Konum: Ankara

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen Battosai » 27 Mar 2009 09:55

Delphi ile MySQL bağlantısı için ZEOS kullanmanı tavsiye ederim...Araya bir aracı koymaya gerek yok direk bağlanmak varken....

deltas
Üye
Mesajlar: 358
Kayıt: 06 Mar 2004 01:08
Konum: Malatya...
İletişim:

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen deltas » 30 Mar 2009 09:07

Bu sorun ile 2 gündür cebelleşiyorum ama çözüm yok. Herhalde Mysql odbc driver için bug. Ancak aynı sorun 3.51 verisyonunda da var. Onu kullandığımda ise bazı Türkçe karekterler ? şeklinde dönüyor.

@battosai Hocam zeos daha önce kullandım. ancak birleştirilmiş sorgulamalarda bazen sıkıntı çıkarıyordu. pek fazla kullanışlı gelmedi (mysql'de kullanmadım. ) Mydac kullanmayı düşündüm. Onda da lisasns problemi var. Sorunu çözemezsem herhalde Firebird kullanacam. (Onuda daha önce hiç kullanmadığım için çekiniyorum)
Nice İnsanlar gördüm üstünde elbise yok;
Nice elbiseler gördüm içinde insan yok.

mkysoft
Kıdemli Üye
Mesajlar: 2867
Kayıt: 25 Ağu 2003 11:35
Konum: İstanbul
İletişim:

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen mkysoft » 30 Mar 2009 10:28

Kullanıcığınız ODBC sürücüsü kullandığınız versiyon ile uyumlu olmayabilir. Ancak aynı sürücüyü eski MySQL ilede kullanıdığınız söylüyorsunuz. Bu durumda aklıma sizin bazı şeylerin düzgün ayarlamadığınız yada kural dışı kullanımlar yaptığınız aklıma geliyor.
Yıllardır MySQL ve zeos kullanıyorum. İçe içe sorgularda bir sıkıntı yarattığını görmedim çünkü sorguları çalıştıran ve sonuçlarını üreten veri tabanıdır. Zeos sadece bir iletişim aracı gibi çalışır.
MySQL'de database ve tablo oluşturmaya başlamadan önce kullanılacak dilin öndeğerini tanımlamakta yarar var, yoksa oluşturulan her tablo yada alanın, ayrıca her sorgunun dilini belirtmek gerekir.
MySQL'e bağlantı kurmadan önce hangi dilde bağlantı kurulucağı belirtilmeledir. Bunu belirtmezseniz Türkçe karekterleri bozuk olarak görürüsünüz.
Sorunu çözmek niyetindeyseniz özel mesaj atabilirsiniz, sohbet yoluyla nerelerde hata yaptığınızı belirleyip daha kolay müdehale etmenize yardım edebilirim, sonuçlarınıda burada yazarız ki başka arkadaşlarda yararlanır.

Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 30 Eyl 2007 11:02
Konum: Ankara

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen Battosai » 30 Mar 2009 11:58

Aktif Zeos kullanıcısıyım daha bir yanlışını görmedim...VT programlama gereği nerdeyse bütün sorgularım birleşik dediğinizden...yanlış izlenimlere kapılıp en iyi ücretsiz alternatifi yabana atmayın.

mkysoft
Kıdemli Üye
Mesajlar: 2867
Kayıt: 25 Ağu 2003 11:35
Konum: İstanbul
İletişim:

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen mkysoft » 31 Mar 2009 12:29

ODBC 5.1 versiyonunda çalıştırmayı başaramadım, latin5 olarak oluşturulan tablolarda E_Fail hatası veriyor. Ancak 3.51 versiyonunu kullanabilirsin.
Yapman gerekenler şunlar:
Veri kaynaklarından 3.51 sürümü ile bir kaynak oluştur.
Connect Options sekmesinden Initial Statement kısmına set names latin5 ekle.
Character set ayarı boş olsun.
Normal şekilde Delphide bağlantıyı ADO ile kur.

deltas
Üye
Mesajlar: 358
Kayıt: 06 Mar 2004 01:08
Konum: Malatya...
İletişim:

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen deltas » 31 Mar 2009 01:41

@mkysoft hocam çok teşekkür ederim..
Nice İnsanlar gördüm üstünde elbise yok;
Nice elbiseler gördüm içinde insan yok.

EmrahOzgur
Üye
Mesajlar: 20
Kayıt: 11 Tem 2010 12:38

Re: E_fail hatası (MySQL ODBC 5.1 )

Mesaj gönderen EmrahOzgur » 14 May 2016 04:01

mkysoft yazdı:ODBC 5.1 versiyonunda çalıştırmayı başaramadım, latin5 olarak oluşturulan tablolarda E_Fail hatası veriyor. Ancak 3.51 versiyonunu kullanabilirsin.
Yapman gerekenler şunlar:
Veri kaynaklarından 3.51 sürümü ile bir kaynak oluştur.
Connect Options sekmesinden Initial Statement kısmına set names latin5 ekle.
Character set ayarı boş olsun.
Normal şekilde Delphide bağlantıyı ADO ile kur.
Hocam Merhaba

Aynı sıkıntı ile bende karşılaştım fakat aynı yöntem sorunuma çözüm olmadı. Delphi üzerinden odbc kullandırarak MySQL veritabanından veri çekmeye çalışıyorum. String yada Integer değerleri çekerken hiç bir sorun yok. Fakat MySQL den tarih alanı çekmeye çalıştığım zaman bu sıkıntı doğuyor. Tarih işin içine girdimi sıkıntı başlıyor. Bu sıkıntı için ne fikriniz ne olur?

Teşekkürler...

Cevapla