MySQL Tablo Alan Farklılıkları

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
ender_arslanturk
Kıdemli Üye
Mesajlar: 709
Kayıt: 18 Şub 2005 03:38
Konum: İstanbul

MySQL Tablo Alan Farklılıkları

Mesaj gönderen ender_arslanturk »

Selâmûn Aleykûm..

Delphinin XE versiyonunda FireDAC Bileşenlerini kullanıyorum. Querylerin içi dolu olduğu için veritabanlarının ayarlarını da bu nesnelere göre ayarlı olması gerekmektedir. Query içerisinde ki alan tipi TStringField ise Tablo alanı da buna göre olmalı yoksa tip hatası verecektir.

Yani SQL serverda açtığım bir tablonun alanlarını MySQL de tanımladığımda proje içerisinde ki query field alan tipleri aynı olmamakta.

SQL Serverda ;

Alan1 Varchar (50) Query içerisinde TStringField tipinde iken
Alan2 NVarChar(50) Query içerisinde TWideStringField tipindedir.

Aynı alanları MySQL de tanımladığımda alanları açtığımda query içerisinde iki alanıda TStringField ya da TWideStringField olarak görüyorum. Connection nesnesinde ki character seti ayarına göre bu şekilde göstermektedir.

Kod: Tümünü seç

CREATE TABLE `tablom` (
  `vAutoInc`    INT(11)      NOT NULL AUTO_INCREMENT,
  `vInteger`    INT(11)      DEFAULT NULL,
  `vDouble` 	DOUBLE(11,3) DEFAULT NULL,

  `vCharacter`  VARCHAR(50)  CHARACTER SET utf8 COLLATE utf8_turkish_ci DEFAULT NULL,
  `vNVarChar`   VARCHAR(50)  CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,

  `vMemo`       TEXT         CHARACTER SET utf8 COLLATE utf8_turkish_ci,
  `vNMemo`      TEXT         CHARACTER SET utf8 COLLATE utf8_unicode_ci,

  `vDate`       DATE         DEFAULT NULL,
  `vTime`       TIME         DEFAULT NULL,
  `vTimeStamp`  TIMESTAMP    NULL DEFAULT NULL,
  PRIMARY KEY (`vAutoInc`)
) ENGINE=INNODB AUTO_INCREMENT=3 DEFAULT CHARSET=latin5
Yukarıda ki kodla denediğimde olmamaktadır.. :s


Delphi tarafında hiçbirşey yapmadan sadece MYSQL tarafında; SQL Serverda ki gibi alanları Query içerisinde (aynı tablo) kimi alan TSTringField kimi alanda TWideStringField olacak şekilde nasıl açabilirim ?

Yardımlarınız için şimdiden teşekkür ederim.
Kullanıcı avatarı
ender_arslanturk
Kıdemli Üye
Mesajlar: 709
Kayıt: 18 Şub 2005 03:38
Konum: İstanbul

Re: MySQL Tablo Alan Farklılıkları

Mesaj gönderen ender_arslanturk »

Sanırım cevap bulunamadı. :)
Cevapla