MySQL ODBC Driver 3.51 'i yükledim ve Artık database olarak MySQL kullanıyorum. Normal Table ve Query ile kullanıyorum.(Delphi 6.0, MySQL 4.0.16-nt)
1-) Kodla nasıl MySQL ODBC Driver 'ını kullanan DSN oluştururum.
Parametreler(Server , User , Password, Database)
2-) Tablolara yeni kayıt girebiliyorum fakat varolan bir kayıtı değiştirip kaydetmeye çalıştığımda sorun çıkartıyor.
Not: Eğer yanlış yere yazdıysam veya topic kirliliğine neden olduysam özür dilerim.MySQL başlıklı bir topic bulamadım.
MySQL ODBC Driver Kodla DSN oluşturma
- ayhanarican
- Üye
- Mesajlar: 37
- Kayıt: 03 Tem 2003 01:24
- Konum: İzmir
- İletişim:
MySQL icin nasil yapacaginizi tam olarak bilemiyorum ama bunu nasil ogreneceginizin yontemini biliyorum. Soyle ki:
Kendi makinanizda bir DSN vardir zaten. Makinanizda Regedit ile Registry'ye girin. HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources altinda sizin ODBC DSN'iniz ile ilgili deger oldugunu goreceksiniz...
ayrica DSN adinin Etis oldugunu varsayarsak ayrica HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\Etis isimli bir key oldugunu da goreceksiniz ve o key'in icinde sizin ODBC DSN'deki parametrelerin degerlerinin var oldugunu goreceksiniz.
İster programinizin kurulumu sirasinda kurulum programi tarafindan isterseniz Delphi icinden kodla bu degerleri eklediginiz taktirde ODBC DSN'ininiz hazir olacaktir.
Tabi buradaki key'ler ve degerler Sybase ASA icin olanlar. Bu ornegi registry'i de inceleyerek MySQL icin kolayca degistirebilir gerekli eklemeleri ve cikarmalari yapabilirsiniz...
Kendi makinanizda bir DSN vardir zaten. Makinanizda Regedit ile Registry'ye girin. HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources altinda sizin ODBC DSN'iniz ile ilgili deger oldugunu goreceksiniz...
ayrica DSN adinin Etis oldugunu varsayarsak ayrica HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\Etis isimli bir key oldugunu da goreceksiniz ve o key'in icinde sizin ODBC DSN'deki parametrelerin degerlerinin var oldugunu goreceksiniz.
İster programinizin kurulumu sirasinda kurulum programi tarafindan isterseniz Delphi icinden kodla bu degerleri eklediginiz taktirde ODBC DSN'ininiz hazir olacaktir.
Kod: Tümünü seç
procedure TDTM_MAIN.DTM_MAINCreate(Sender: TObject);
var
Reg: TRegistry;
VAR_ETIS_DIZINI:string;
begin
VAR_EXE_VERSIYON:='6.0';
DTB_ETIS.LoginPrompt:=True;
VAR_PROGRAM_DIZINI := ExtractFilePath(Application.ExeName);
VAR_ETIS_DIZINI:=Copy(VAR_PROGRAM_DIZINI,1,Pos('\PROGRAMS\',Uppercase(VAR_PROGRAM_DIZINI)));//Programin ana dizini bulunuyor....
// Etis dsn i kontorl ediliyor yoksa olusturuluyor
Reg := TRegistry.Create;
try
Reg.RootKey:=HKEY_CURRENT_USER;
if not Reg.OpenKey('Software\ODBC\ODBC.INI\Etis',False) and DirectoryExists(VAR_ETIS_DIZINI+'ASA\Win32\') then
begin
Reg.OpenKey('Software\ODBC\ODBC.INI\Etis',True);
Reg.WriteString('AutoStop','YES');
Reg.WriteString('Delphi','Yes');
Reg.WriteString('DatabaseFile',VAR_ETIS_DIZINI+'Databases\Etis.db');
Reg.WriteString('Driver',VAR_ETIS_DIZINI+'ASA\Win32\dbodbc8.dll');
Reg.WriteString('Integrated','NO');
end;
finally
Reg.CloseKey;
if not Reg.OpenKey('Software\ODBC\ODBC.INI\ODBC Data Sources',True) then
ShowMessage('Bilgisayarinizin ODBC sisteminde problem var...')
else
begin
Reg.WriteString('Etis','Adaptive Server Anywhere 8.0');
end;
Reg.CloseKey;
Reg.Free;
end;
end;
Bu kodlari mesela programinizin create edilen ilk datamodulu veya formunun oncreate eventine yazabilirsiniz... Ama mesajda da uzunca izah ettigim uzere bu sizin isteginizi birebir yapmayacaktir. Sadece size bir ornek olmasi sebebi ile godnerdim. Siz yine tarif ettigim sekilde kendi dsn'ininizin regisrty degerlerine bakip onlari olusturmalısınız....
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

önce sen bi dsn yarat. Ondan sonra
makinanda Regedit ile Registry'ye gir. HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources
altında senin yarattığın dsn in ile ilgili değerleri göreceksin.
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ altında kendi dsn ismin olacak. İşte bunların hepsinin değerlerini incele ve programından bu anahtarlarının sana uygun adlarını yarat. Başka türlü bildiğim kadarıyla olmuyor. Bu şekilde yapmalısın yani...
makinanda Regedit ile Registry'ye gir. HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources
altında senin yarattığın dsn in ile ilgili değerleri göreceksin.
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ altında kendi dsn ismin olacak. İşte bunların hepsinin değerlerini incele ve programından bu anahtarlarının sana uygun adlarını yarat. Başka türlü bildiğim kadarıyla olmuyor. Bu şekilde yapmalısın yani...