mydac mysql autoinc alan

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ı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

mydac mysql autoinc alan

Mesaj gönderen greenegitim »

Firebird ' e generator olarak autoinc bir alan belirleyebiliyoruz mysql mydac la ve zeosla bunu nasıl yaparız?
onnewrecorda id alanını hep 1 artırmak için.
Mücadele güzelleştirir!
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: mydac mysql autoinc alan

Mesaj gönderen mkysoft »

MySQL alan tipi olarak autoinc seçerseniz otomatik olarak yapılacaktır.
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: mydac mysql autoinc alan

Mesaj gönderen greenegitim »

Field 'ID' must have a value. hatasını verdi
yaptığım işlem örneği

Kod: Tümünü seç

myQuery.insert;
myQueryadi.tex:='ali';
myQuery.post;

birde insertscript ile mysql e yükleme yaparken id autoinc alanını biz vermememiz gibi bir durum olabilirmi insert sql cümlesinde id alanından sonrakileri yazmak gibi?
Mücadele güzelleştirir!
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: mydac mysql autoinc alan

Mesaj gönderen mkysoft »

Hangi companent seti ile bağlanıyorsunuz bilmiyorum. Table nesnesi üzerinde autoinc olan alanın ayarlarını yapmalısınız. Yada tabloda değişiklik yaptıktan sonra table'ı tekrar yaratmalısınız.
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: mydac mysql autoinc alan

Mesaj gönderen vkamadan »

merhaba ,
içinde autoinc primary index tanımlı bir tablo örneği ;

Kod: Tümünü seç

CREATE TABLE `ufgroup` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `kod` varchar(20) DEFAULT NULL,
  `aciklama` varchar(40) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: mydac mysql autoinc alan

Mesaj gönderen greenegitim »

mkysoft hocam mydac Tmyquery bileşenini kullanıyorum sadece fields editörde id alanımı seçtiğimde propertieste autogeneratevalue de arAutoInc seçeneğini bulabildim ama oda işe yaramadı id değerini kendim vermezsem myqueryid.value:=1 vs kabul etmiyor
vkamadan yazdı:merhaba ,
içinde autoinc primary index tanımlı bir tablo örneği ;
yanlış anlatım hocam örneğin

Kod: Tümünü seç

INSERT INTO `product` VALUES (1373, 'SUU00010', '', '', '', 100, 5, 0x646174612f53555530303031302d312e6a7067, 0, 1, 10.0000, 0, 0, '2013-02-15', 0.00000000, 1, 0.00000000, 0.00000000, 0.00000000, 1, 1, 1, 1, 1, '2013-02-16 03:06:11', '2013-02-16 03:08:21', 0);
buradaki valuesten sonra 1373 sayısı id alanı ben bunu kendi programımdaki id den veriyorum ama sorun olabiliyor programdan oluşturduğum insertinto sqlini daha sonra bigdump ilemysql e atıyorum buradaki 1373 alanına bir şey yazmayıpta mysql bu alanın kendi autoinc alanı olduğunu anlayıp kendisi bir değer verebilirmi?
Mücadele güzelleştirir!
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: mydac mysql autoinc alan

Mesaj gönderen vkamadan »

eğer tablonuzda autoinc alan varsa o alanı cümlede hiç kullanmaz yada NULL gönderirseniz sunucu sıradaki numarayı otomatik olarak verir, doğası böyle, MyDAC ta insert cümleinizi EXEC ettikten sonra dilerseniz sistemin verdiği Id yide örn MyQUery1.InsertID diyerek alabilirsiniz yada aynı Connection nesensine bağlı dataset üzerinden yeni bir cümle ile sizin oturumun neden olduğu en son AUTOINC ID yi alabilirsiniz, SELECT last_insert_id();
Volkan KAMADAN
www.polisoft.com.tr
Cevapla