sequences

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
arkach
Üye
Mesajlar: 51
Kayıt: 28 Ara 2006 08:56

sequences

Mesaj gönderen arkach »

mysqlde sequences nasil ayarlabilirim illa bir table mi olusturmali onun icin
mesela
ASGH1
ASGH2
ASGH3

diye devam etmesi gereken bir fieldim var ben gendcz diye table olusturdum ve her defasinda deger almak icin
select concat('ASGH',seq_dcz()); diyerek yeni bir deger elde ediyorum
ve bunun benim table sayisi sirf squence icin artikca artiyor
bu durumu nasil halledebilirim

//table
CREATE TABLE `gendcz` (
`num` int(11) NOT NULL auto_increment,
PRIMARY KEY (`num`)
);

//sequence function

CREATE FUNCTION `seq_dcz`()
RETURNS int(10)
DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
BEGIN INSERT INTO `gendcz` VALUES (0) ON DUPLICATE KEY UPDATE `num` = LAST_INSERT_ID(`num` + 1); RETURN LAST_INSERT_ID(); END;
turkmenistandan selamlar
danaci
Üye
Mesajlar: 178
Kayıt: 24 May 2005 01:45

Mesaj gönderen danaci »

illa sequence oluşturmanız gerekmez
yapmanız gereken en son kaydettiğiniz(en büyük olan) numarayı bulup onu bir artırmanız

select max(sira_no) enbuyuk from table yaparsın

bunuda ASGh ile concat edersin işin çözülmüş olur

table1kod.value:='ASGH'+inttostr(enbuyuk) şeklinde
Cevapla