1. sayfa
no , ad , soyad , yas alanlarının database tablondaki alanlar ve tipleri ile yanı olduğunu düşünerek . aşağıdaki kod dener misin. olmaz ise table design resmini ekle buraya bakalım. OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=ogrenciler.accdb"); if (baglanti.State==ConnectionState.Closed) { baglanti.Open(); } OleDbCommand komut = new OleDbCommand("insert into ogrenci(no, ad, soyad, yas) values(@no,@ad,@soyad,@yas)", baglanti); komut.Parameters.Add("@no", OleDbType.Integer).Value = Convert.ToInt32(notext.Text); komut.Parameters.Add("@ad", OleDbType.VarChar,50).Value = Convert.ToInt32(adtext.Text); komut.Parameters.Add("@soyad", OleDbType.VarChar, 50).Value = Convert.ToInt32(soyadtext.Text); komut.Parameters.Add("@yas", OleDbType.Integer).Value = Convert.ToInt32(yastext.Text); komut.ExecuteNonQuery(); baglanti.Close(); sonuc.Text = "Kayıt Tamamlandı."; |
Normal yazilim mantiginda hata tutmak cok onemlidir. Bu islemde ne yaparsaniz yapin sonuc islem basarili donecektir. Try blogu icine kodlarinizi yazip basarili mesaji verin catch durumunda gelen parametreleri loglayin ve islemin basarili olmadigi mesajini verin ve finally blogunda da baglantinizi kapatip isi bitirin. |
Çok teşekkür ederim ama ben kodu anlamadım. Anlamam önemli yaptığımı anlatacam çünkü veritabanım ve design kısmım aşağıdaki gibi. https://store.donanimhaber.com/9e/ec/00/9eec00ca31d69f06df182878151e5e51.jpg https://store.donanimhaber.com/3e/d7/e4/3ed7e4ee3909b0935235d3b6e0ea1339.jpg < Resime gitmek için tıklayın >< Resime gitmek için tıklayın > |
Teşekkür ederim. Ama benim yazdığım kod başarılı dönüt vermiyor ki. Alanlara veri girdiğim zaman başlıktaki hatayı alıyorum. Sürekli alıyorum ayrıca try catch bi işime yaramaz catch deki mesajı alırım sürekli. Ben alanlara girdiğim verilerin veritabanıma kaydolmasını istiyorum. |
Kaygerya ; Normalization kurallarına göre ve yazılım standartları na göre haklı aslında daha çok n-tier arc. şeklinde düşünüp validation sınıflarından tutun hata sınıflarıan kadar oluşturulmalı . nefarkeder23 ; kodun yaptığı şey sadece ilgili sql satırına parametre eklemek bunu ekler iken database deki tablodaki tipine göre işlem yaparak ekliyor ayrıca bağlanti cümlen if şartı database ile bağantının sağlanması durumunda bağlantının açıkmı kapalımı olduğunu kontrol ediyor. |
no ve yas sayı olduğundan tek tırnak ekleme. values(" + no + ",'" + ad + "','" + soyad + "'," + yas + ")", baglanti); |
Teşekkür ederim. Sizin verdiğiniz kodla yazdım ama sonuç değişmedi https://store.donanimhaber.com/52/79/04/527904d8e2ffac7fbc93f064d693538c.jpg < Resime gitmek için tıklayın > |
Teşekkürler. Ama sonuç değişmedi. |
textboxlarda tek tırnak varsa onu çift yap veya kodla yaptır syntax error ondan olabilir |
Nasıl yani anlamadım. Zahmet olmasa biraz detaylı anlatırmısınız. |
1. sayfa
baglanti.Open();
int no = Convert.ToInt32(notext.Text);
int yas = Convert.ToInt32(yastext.Text);
string ad = adtext.Text;
string soyad = soyadtext.Text;
OleDbCommand komut = new OleDbCommand("insert into ogrenci(no, ad, soyad, yas) values('" + no + "','" + ad + "','" + soyad + "','" + yas + "')", baglanti);
komut.ExecuteNonQuery();
baglanti.Close();
sonuc.Text = "Kayıt Tamamlandı.";
Bu sorgumda nasıl bir hata var çözemedim. Bir de siz bakar mısınız?
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.