Silinen Otomatik Sayının Yerini Doldurma - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: Silinen Otomatik Sayının Yerini Doldurma (/konu-silinen-otomatik-sayinin-yerini-doldurma--82864.html) Sayfalar:
1
2
|
Silinen Otomatik Sayının Yerini Doldurma - serkandiker - 18/04/2017 Hocam uygulama Mysql veri tabanı ile denediğimizde Kwerenda2 sorgusu Birleşme ifadesi desteklenmiyor hatası veriyor. Kod:
SELECT Min(Tabela1.ID) AS OstID Sorgu içindeki Sql kodu içinde birleşmenin sonunda bulunan matematiksel işlem sorunu doğuruyor.Lakin araştırmam sonucu bir çözüm bulamadım değerli yardımlarınızı rica ediyorum. Kod Kaynağı Cvp: Silinen Otomatik Sayının Yerini Doldurma - alpeki99 - 18/04/2017 Kayıt sildiğinizde otomatik sayılar arasında boşluk olmasını mı istemiyorsunuz? Cvp: Silinen Otomatik Sayının Yerini Doldurma - serkandiker - 18/04/2017 Aynen Cvp: Silinen Otomatik Sayının Yerini Doldurma - alpeki99 - 18/04/2017 Madem size böyle bir şey gerekiyor o zaman tablonuzdan otomatik sayıyı kaldırın. Otomatik sayı size sayıları "sıra" ile göstermek için değildir. Kayıtlar tutarlı olsun, kayıt bütünlüğü olsun diye vardır. Sıra için "Otomatik Sayı" kullanılmaz. Bunun yerine yeni bir alan eklersiniz ve her kayıt silinmesinden sonra bu alandaki kayıtları yeniden verirsiniz. Kısacası otomatik sayıya bulaşmakla hata yapıyorsunuz Cvp: Silinen Otomatik Sayının Yerini Doldurma - serkandiker - 18/04/2017 (18/04/2017, 14:52)alpeki99 yazdı: Madem size böyle bir şey gerekiyor o zaman tablonuzdan otomatik sayıyı kaldırın. Otomatik sayı size sayıları "sıra" ile göstermek için değildir. Kayıtlar tutarlı olsun, kayıt bütünlüğü olsun diye vardır. Sıra için "Otomatik Sayı" kullanılmaz. Bunun yerine yeni bir alan eklersiniz ve her kayıt silinmesinden sonra bu alandaki kayıtları yeniden verirsiniz. Kısacası otomatik sayıya bulaşmakla hata yapıyorsunuz bu uygulamada Access veri tabanı ile her hangi problem olmuyor.Uygulama aradaki silinmiş numaraları buluyor.Yani 498 500 arada 499 var onu bulup sırayı tamamlıyor yalnız mysql datebase üzerinde bu hata iletisi belirmekte hocam Cvp: Silinen Otomatik Sayının Yerini Doldurma - alpeki99 - 18/04/2017 Uygulamayı biliyorum yıllar öncesinde birisi yapmış, makalelere konu olmuş vs. ancak temelde mantık yine değişmiyor. Sizin yapmak istediğiniz şey şu: Herkesi bir TC Kimlik Numarası var. Birgün birisi ölüyor ve o kişinin TC sini aradan kaldırıp tüm Türkiye'ye senin TC numaran değişti artık yeni numaran bu diyorsunuz. Yalnız burada bir sorun var. Çünkü tüm resmi ve özel kurumlarda tüm ödemeleriniz eski TC numaranız ile kayıtlı. Eski numaranız ile tüm işleriniz bire-çok şeklinde ilişkili olduğundan sorunlar ortaya çıkacak. Birincil anahtar işte bu işe yarar. Sizin bunu Access ile yapabiliyor olmanız doğru olduğu anlamına gelmez. Eğer sıra numarasına ihtiyacınız varsa bunu ayrı bir alanda saklamalısınız. Diğer yandan MySql ile çalışmamasına gelecek olursak gayet doğal çünkü her ikisi farklı veritabanı motoruna sahipler. MySql de :
ile tablo ismini vererek tekrar birincil anahtar alanı 1 den başlatabilirsiniz ancak bunun için tablonun boş olması lazım. Farklı bir şekilde ise şöyle çözebilirsiniz: önce mevcut birincil anahtar sütun hangisi ise onu silelim. Örnekte alanımızın adı "id":
sonrasında yeni bir sütun ekleyelim ve sildiğimiz sütun ile aynı özelliklere ve isime sahip olsun:
şeklinde tablonun başına birincil anahtar otomatik sayı bir alan eklemiş olursunuz ve tüm sayılar 1 den başlayarak sırayla devam eder. Bu arada bu işlemin yapılmaması gerektiğini söylemiş miydim? |