lostyazilim
tr.link

Hataya göre mesaj gösterme

8 Mesajlar 965 Okunma
acebozum
tr.link

yunus3346 yunus3346 Yakında.. Kullanıcı
  • Üyelik 22.05.2015
  • Yaş/Cinsiyet 29 / E
  • Meslek öğrenci
  • Konum Elazığ
  • Ad Soyad Y** C**
  • Mesajlar 322
  • Beğeniler 13 / 75
  • Ticaret 0, (%0)
Herkese merhaba. Konu başlığı biraz abes oldu ama ne sormak istediğimi açıkca anlatmaya çalışayım.

c# ve access kullanarak bir program yapıyorum. veritabanımda araçlar tablosunda plaka sutununda primary key kullandım. Şimdi c# form tarafında ekleme yaparken aynı plakayı tekrar girdiğimizde hata mesajında uzunca bir primary key hatası veriyor.

Ben bu hata metnini değilde "bu araç daha önce eklenmiş" diye mesaj göstermek istiyorum. Nasıl yapabilirim?
 

 

Yapım aşamasında..
elektronikssl
webimgo

YusufOzcan YusufOzcan WM Aracı Banlı Kullanıcı
  • Üyelik 19.01.2014
  • Yaş/Cinsiyet 28 / E
  • Meslek Öğrenci
  • Konum İstanbul Avrupa
  • Ad Soyad Y** Ö**
  • Mesajlar 365
  • Beğeniler 51 / 63
  • Ticaret 31, (%100)
-----
 

 

yunus3346 yunus3346 Yakında.. Kullanıcı
  • Üyelik 22.05.2015
  • Yaş/Cinsiyet 29 / E
  • Meslek öğrenci
  • Konum Elazığ
  • Ad Soyad Y** C**
  • Mesajlar 322
  • Beğeniler 13 / 75
  • Ticaret 0, (%0)
YusufOzcan bunu düşündüm. Ancak her ekleme işleminde bütün plakalar içinde arama yapması gerekecek. İlk başlarda olmasa bile sonrasında sıkıntı çıkarır diye yapmadım. Başka yapabileceğim yöntem var mıdır?
 

 

Yapım aşamasında..

KadirCeyhan KadirCeyhan WM Aracı Kullanıcı
  • Üyelik 23.10.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek Öğrenci
  • Konum Denizli
  • Ad Soyad K** C**
  • Mesajlar 689
  • Beğeniler 0 / 203
  • Ticaret 6, (%100)
PHP ve MYSQL ile örnek vereyim. Kullanıcı kayıt formunu gönderdiğinde, ilk önce bu kullanıcı adı ile bi sorgu dönderiyorum.

Mesela kayıt olacak kişi, kullanıcı adı kısmına "kadir" yazmış olsun.

SELECT username FROM data_users WHERE username = 'kadir';

sorgusunu dönderiyorum. Sonra diyorum ki, if (mysqli_affected_rows())

Yani etkilenen bir satır varsa (SORGU BOŞ DÖNMÜYORSA), "Kullanıcı adı zaten kullanımda" şeklinde hata veriyorum.

Sende kendi kullandığın programlama dilinde bu mantığı uyarlayabilirsin.
 

 

wmaraci
wmaraci

yunus3346 yunus3346 Yakında.. Kullanıcı
  • Üyelik 22.05.2015
  • Yaş/Cinsiyet 29 / E
  • Meslek öğrenci
  • Konum Elazığ
  • Ad Soyad Y** C**
  • Mesajlar 322
  • Beğeniler 13 / 75
  • Ticaret 0, (%0)
YusufOzcan ve KadirCeyhan teşekkür ederim. Galiba dediğiniz şekilde sorgu ile yapıcam.
 

 

Yapım aşamasında..

Blacksheep Blacksheep .NET Developer Kullanıcı
  • Üyelik 20.07.2014
  • Yaş/Cinsiyet 28 / E
  • Meslek Webmaster
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 2074
  • Beğeniler 60 / 532
  • Ticaret 10, (%100)

try
{
//insertion code
}
catch(OleDbException ex)
{
if(ex.Number == 2627)
{


}
}


İşlemleri Try bloğu içerisinde yazarsan ve catch kısmında exceptionu yakalayıp bir koşul ifadesi ile yakaladığın hatanın numarasına bakarak kullanıcıya anlamlı mesajlar verebilirsin.OleDbException Access kullandığın için eğer SQL kullanıyorsan SqlException yazmalısın.Oluşan hatanın numarasına ise program derleyici üzerinde çalışırken hata verdiği sırada aşağıdaki panelden Error Number olarak görürsün.Umarım yardımcı olur :)
 

 

Fizello - Inspired by Colors

yunus3346 yunus3346 Yakında.. Kullanıcı
  • Üyelik 22.05.2015
  • Yaş/Cinsiyet 29 / E
  • Meslek öğrenci
  • Konum Elazığ
  • Ad Soyad Y** C**
  • Mesajlar 322
  • Beğeniler 13 / 75
  • Ticaret 0, (%0)
Blacksheep aynen bu tip bir şey var mı diye sormuştum. Ancak error number kısmını bulamadım :)
 

 

Yapım aşamasında..

reload58 reload58 Çaylak Mühendis E-Mail Onaysız
  • Üyelik 10.02.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek Öğrenci
  • Konum Sivas
  • Ad Soyad H** A**
  • Mesajlar 1176
  • Beğeniler 530 / 286
  • Ticaret 0, (%0)
yunus3346 ilgili fonksiyonu yani veri tabanına ekleme yaptığınız kısmı paylaşın, düzenleyip yeni şeklini atayım.
 

 

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al