girmiş olduğum kayıtlara, her gün 1 den başlamak üzere sıra numarası veriyorum.
"SELECT MAX( sira_no )" ile kontrol edip en buyuk degere +1 ekliyorum.
örnegin.
01.05.2014 tarihindeki kayıtlar 1 den başlıyor
02.05.2014 ki kayıtlar yeniden 1 den başlıyor.
sıkıntım şu.
01.05.2014 tarihinde 5 kayıt girdim. sonrasında 3. kaydı sildim ve yeni bir kayıt girdim. benim girdiğim kayıt 6 oluyor. arada eksik sıra numarasi var mı ? bunu kontrol edip numarayı nasıl atarım?
Sıra numarası verme hk. bir soru
12
●1.166
- 06-05-2014, 21:40:29Hocam zaten o şekil olur. İd ile olduğu için.~Aykut adlı üyeden alıntı: mesajı görüntüle
- 07-05-2014, 07:04:17Arkadaşlar mesajınızı okumamış sanırım hocam.~Aykut adlı üyeden alıntı: mesajı görüntüle
Ben size anlatımını yapayım siz anlamanız açısından kendiniz yapın. Yapamazsanız kodu da veririm.
Diyelim ki 5 kayıt eklediniz ve 3. kaydı sildiniz. Şu an 3. kayıt boş ve siz yeni bir kayıt ekleyeceksiniz. Kaydın 3. sıraya yerleşmesi sorun değilse;
- Maksimum sıra numarasını edinin.
- For döngüsü oluşturarak maksimum sıra numarasından 1'e kadar sayı eksilterek teker teker o sıra numarası var mı yok mu kontrol edin.
- Sıra numarası eksik bir alana gelindiğinde for döngüsünü durdurun ve eksik olan sıra numarasını bir değişkene yazdırın.
- Değişkene yazdırdığınız sıra numarasını yapacağınız kayıtta kullanın.
- Eksik bir sıra numarası yoksa değişkene şu an olduğu gibi maksimum sıra numarasının bir üstünü alın.
Önceki kayıtların 1'den 4'e kadar sıralanmasını ve yeni kaydın 5. sıraya girmesini istiyorsanız sıra numarasına göre kayıtları sıralatıp sira numaralarını 1'den başlatarak baştan yazdırın. Şu an gireceğiniz kaydı da onların bir üst sırasına yazdırın.
Kolay gelsin. - 08-05-2014, 02:19:37veya tam tersi, her kayıtta 1 den başlayarak kontrol edebilirim. bu aklıma geldi fakat direk olarak sayıları kontrol eden bir kod var mı diye merak ettim?sewakldawk adlı üyeden alıntı: mesajı görüntüle