Otomatik Artan Sayı Giriş Yapmadan Artmasın
#1
Merhaba

Kayıt işlemlerimde bir düzenleme yaptım. Otomatik artan sayının en son kaldığı yerden devam ediyor .Bu sayıyı tekrar baştan başlamasını nasıl sağlayabilirim?
Unsure



  Alıntı
Bu mesajı beğenenler:
#2
Merhaba;

Alttaki kodu kullanabilirsiniz ama dikkat edin tablodaki tüm kayıtlar SİLİNECEKTİR. Birincil anahtar olan oto sayınız tekrar resetlenecektir.

Not: Kod "Allen Brown" tarafından yazılmıştır ve çalışması için de referanslara "Microsoft ADO Ext. ... DDL and security" eklenmelidir.

Visual Basic
  1. Function DeleteAllAndResetAutoNum(strTable As String) As Boolean
  2. 'Purpose: Delete all records from the table, and reset the AutoNumber using ADOX.
  3. ' Also illustrates how to find the AutoNumber field.
  4. 'Argument: Name of the table to reset.
  5. 'Return: True if sucessful.
  6. Dim cat As New ADOX.Catalog
  7. Dim tbl As ADOX.Table
  8. Dim col As ADOX.Column
  9. Dim strSql As String
  10.  
  11. 'Delete all records.
  12. strSql = "DELETE FROM [" & strTable & "];"
  13. CurrentProject.Connection.Execute strSql
  14.  
  15. 'Find and reset the AutoNum field.
  16. cat.ActiveConnection = CurrentProject.Connection
  17. Set tbl = cat.Tables(strTable)
  18. For Each col In tbl.Columns
  19. If col.Properties("Autoincrement") Then
  20. col.Properties("Seed") = 1
  21. DeleteAllAndResetAutoNum = True
  22. End If
  23. Next
  24. End Function


Javascript
  1. this.setState({sign:"Here comes the sun...."})







  Alıntı
Bu mesajı beğenenler:
#3
access-sql-9 
Sn. Berkant

Kodu hangi alana ekleme yapacam ben ana form tasarım görünümünde otomatik sıra alanındaki yerden özelliklerden olay oluşturdan denedim olmadı. Güncelleştirme öncesinde felan da denedim olmadı. Galiba yalnış yoldayım. Tabloda kaydım yok.

Son olarak veri girişlerine başladığım zaman sürekli resetlemez dimi ?



  Alıntı
Bu mesajı beğenenler:
#4
Kodu bir module kopyalayın. Daha sonra istediğiniz gibi kullanabilirsiniz, örnek olarak bir düğmenin tıklama kodunda kullanmanız gerekirse kod aşağıdaki gibi olmalıdır.

Visual Basic
  1. DeleteAllAndResetAutoNum("Tablo_Ismi") 'Resetlenecek tablo ismini yazınız.



İşiniz bittiğinde düğmeyi silebilirsiniz. Moduldeki kodu da...

Tablodaki verilerin silineceğini de unutmayınız..
Javascript
  1. this.setState({sign:"Here comes the sun...."})







  Alıntı
Bu mesajı beğenenler:
#5
access-sql-9 
sn. Berkant Bey

Teşekkürler ama yapamadım. Program reklam içerdiği için siteye eklemek istemiyorum. Çare ne olabilir. 1 haziranda kullanmaya başlayacaz.



  Alıntı
Bu mesajı beğenenler:
#6
Tablolar arasındaki ilişki engelleyebilir. Bence en güzeli tabloyu boşaltan kısmını silelim ve "seed" kısmını da istediğiniz sayıdan başlatın. Bu durumda module ekleyeceğiniz kod alttaki gibi olacaktır.

Visual Basic
  1. Function DeleteAllAndResetAutoNum(strTable As String) As Boolean
  2. 'Purpose: Delete all records from the table, and reset the AutoNumber using ADOX.
  3. ' Also illustrates how to find the AutoNumber field.
  4. 'Argument: Name of the table to reset.
  5. 'Return: True if sucessful.
  6. Dim cat As New ADOX.Catalog
  7. Dim tbl As ADOX.Table
  8. Dim col As ADOX.Column
  9. Dim strSql As String
  10.  
  11. 'Tablodaki kayıtları silen kodları pasif yaptık
  12. 'strSql = "DELETE FROM [" & strTable & "];"
  13. ' CurrentProject.Connection.Execute strSql
  14.  
  15. 'Find and reset the AutoNum field.
  16. cat.ActiveConnection = CurrentProject.Connection
  17. Set tbl = cat.Tables(strTable)
  18. For Each col In tbl.Columns
  19. If col.Properties("Autoincrement") Then
  20. col.Properties("Seed") = 1 ' burada 1 yerine istediğiniz sayıdan başlatabilrisiniz.
  21. DeleteAllAndResetAutoNum = True
  22. End If
  23. Next
  24. End Function



"Seed" eşitliğinde "1" yerine istediğiniz sayıdan da başlatabilrisiniz ama tabloyu boşaltmadığınız için daha önce girilmiş bir sayıdan başlarsa sorun çıkacaktır.
Javascript
  1. this.setState({sign:"Here comes the sun...."})







  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [SORGU] iki sayı arasında nasıl sorgu yapılır? 26092009 3 7.658 15-12-2024, 08:42
Son Mesaj: halil.tefci
access-sql-18 [RAPOR] Kayıt Içerisindeki Miktar Alanındaki Sayı Kadar Rapora Ilgili Kaydı Rapora Kopyalama gurolk 12 937 29-07-2024, 12:01
Son Mesaj: dsezgin
  Sayı Bulma evren89 1 326 16-06-2024, 01:49
Son Mesaj: dsezgin
access-sql-18 Format([giris], "dd-mm-yyyy" Sorgu Ifadesi Içindeki Derleme Hatası. gncbil 5 600 07-06-2024, 10:48
Son Mesaj: dsezgin
  Tabloya Qr Kodla Veri Giriş SBNS 3 525 08-02-2024, 13:24
Son Mesaj: BeyTor
  [SORGU] Sayı Formatı Bozulmadan Metinle Birleştirme atyaty 2 384 08-12-2023, 18:57
Son Mesaj: atyaty
  [TABLO] çoklu Birleşik Giriş Kutusu RASİMPEH 2 487 19-09-2023, 04:53
Son Mesaj: RASİMPEH
  [VBA] Yıl Ay Sayı Sıralama Kodu Hakkında Ahmet51 6 768 29-05-2023, 09:31
Son Mesaj: halily

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi