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: 704
Kayıt: 28 Nis 2011 09:33
Konum: İstanbul

mydac mysql autoinc alan

Mesaj gönderen greenegitim » 16 Mar 2013 10:45

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: 2934
Kayıt: 25 Ağu 2003 11:35
Konum: İstanbul
İletişim:

Re: mydac mysql autoinc alan

Mesaj gönderen mkysoft » 17 Mar 2013 11:35

MySQL alan tipi olarak autoinc seçerseniz otomatik olarak yapılacaktır.

Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 704
Kayıt: 28 Nis 2011 09:33
Konum: İstanbul

Re: mydac mysql autoinc alan

Mesaj gönderen greenegitim » 18 Mar 2013 01:27

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: 2934
Kayıt: 25 Ağu 2003 11:35
Konum: İstanbul
İletişim:

Re: mydac mysql autoinc alan

Mesaj gönderen mkysoft » 19 Mar 2013 06:20

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 » 21 Mar 2013 09:00

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: 704
Kayıt: 28 Nis 2011 09:33
Konum: İstanbul

Re: mydac mysql autoinc alan

Mesaj gönderen greenegitim » 21 Mar 2013 08:20

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 » 22 Mar 2013 09:14

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