Kendi Otomatik Artan Alanınızı Oluşturun
Öncelikle tablomuzu oluşturuyoruz.tablo adı xxx olsun. otomatik artmasını istediğiniz alanın tipini Sayısal bir tip olarak seçin. örneğin integer tipini seçebilirsiniz. otomatik artmasını istediğiniz alanın adınıda OtoAlan olarak belirlediğinizi varsayıyorum. bildiğiniz şekilde veritabanı bağlantınızı yapın. Ek olarak xxx tablosundan en büyük sayının bir fazlasını bulabilmemizi sağlayacak sorgumuzu çalıştırabilmemiz için forma 1 query ekliyoruz.
Query'nin SQL özelliğine Select Max(otoAlan)+1 As myOtoAlan From xxx
şimdi bu sorguyu Datasetiniz herneyse (query,table vb.) afterinsert olayında çalıştırıp dönen değeri xxx tablosundaki otoAlan adlı alanımıza değeeri atıyoruz.
datasetinizin after isert olayına aşağıdaki kodu yazıyoruz.
Kod:
BenimQuery.Open;
SizinDataset.FieldByName('otoAlan').Asinteger:=benimQuery.Fi eldByName('myOtoAlan').Asinteger;
benimQuery.Close;
Kod:
if SizinDataset.FieldByName('otoAlan').isNull Then //Alan Boşsa
Begin
BenimQuery.Open;
SizinDataset.FieldByName('otoAlan').Asinteger:=benimQuery.Fi eldByName('myOtoAlan').Asinteger;
benimQuery.Close;
End;
Öncelikle tablomuzu oluşturuyoruz.tablo adı xxx olsun. otomatik artmasını istediğiniz alanın tipini Sayısal bir tip olarak seçin. örneğin integer tipini seçebilirsiniz. otomatik artmasını istediğiniz alanın adınıda OtoAlan olarak belirlediğinizi varsayıyorum. bildiğiniz şekilde veritabanı bağlantınızı yapın. Ek olarak xxx tablosundan en büyük sayının bir fazlasını bulabilmemizi sağlayacak sorgumuzu çalıştırabilmemiz için forma 1 query ekliyoruz.
Query'nin SQL özelliğine Select Max(otoAlan)+1 As myOtoAlan From xxx
şimdi bu sorguyu Datasetiniz herneyse (query,table vb.) afterinsert olayında çalıştırıp dönen değeri xxx tablosundaki otoAlan adlı alanımıza değeeri atıyoruz.
datasetinizin after isert olayına aşağıdaki kodu yazıyoruz.
Kod:
BenimQuery.Open;
SizinDataset.FieldByName('otoAlan').Asinteger:=benimQuery.Fi eldByName('myOtoAlan').Asinteger;
benimQuery.Close;
Kod:
if SizinDataset.FieldByName('otoAlan').isNull Then //Alan Boşsa
Begin
BenimQuery.Open;
SizinDataset.FieldByName('otoAlan').Asinteger:=benimQuery.Fi eldByName('myOtoAlan').Asinteger;
benimQuery.Close;
End;