Şimdi Ara

Syntax error in INSERT INTO statement. Hatası

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
12
Cevap
0
Favori
3.645
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri
  • Son Yorum 8 yıl
  • Cevaplayan Üyeler 5
  • Konu Sahibinin Yazdıkları 8
  • Ortalama Mesaj Aralığı 15 saat 35 dakika
  • Son 1 Saatteki Mesajlar 3
  • Haberdar Edildiklerim (Alıntılar) 2
  • Konuya En Çok Yazanlar
  • nefarkeder23 (8 mesaj) projeyazilim (2 mesaj) ctn48 (1 mesaj) Thook (1 mesaj) Kaygerya (1 mesaj)
  • Konuya Yazanların Platform Dağılımı
  • Masaüstü (6 mesaj) Mobil (1 mesaj)
  • @
0 oy
Öne Çıkar
Tüm Forumlar >> Web Tasarım - Programlama >> Yazılım Geliştirme >> Asp / Asp.NET >> Syntax error in INSERT INTO statement. Hatası
Sayfaya Git:
Sayfa:
1
Giriş
Mesaj
  • Teğmen
    198 Mesaj
    Konu Sahibine Özel
    OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=ogrenciler.accdb");
    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?



    |
    |
  • Teğmen
    213 Mesaj
    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ı.";




  • Yarbay
    8319 Mesaj
    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.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Teğmen
    198 Mesaj
    Konu Sahibine Özel
    quote:

    Orijinalden alıntı: projeyazilim

    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ı.";

    Ç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
    |
    |




  • Teğmen
    198 Mesaj
    Konu Sahibine Özel
    quote:

    Orijinalden alıntı: Kaygerya

    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.

    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.
  • Teğmen
    213 Mesaj

    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.
    |
    |
    nefarkeder23 kullanıcısının, bahsedilen mesajını gör
  • Yüzbaşı
    288 Mesaj

    no ve yas sayı olduğundan tek tırnak ekleme.

    values(" + no + ",'" + ad + "','" + soyad + "'," + yas + ")", baglanti);
    |
    |
    nefarkeder23 kullanıcısının, bahsedilen mesajını gör
  • Teğmen
    198 Mesaj
    Konu Sahibine Özel
    quote:

    Orijinalden alıntı: projeyazilim


    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.

    Teşekkür ederim. Sizin verdiğiniz kodla yazdım ama sonuç değişmedi
    https://store.donanimhaber.com/52/79/04/527904d8e2ffac7fbc93f064d693538c.jpg
    |
    |




  • Teğmen
    198 Mesaj
    Konu Sahibine Özel
    quote:

    Orijinalden alıntı: Thook

    no ve yas sayı olduğundan tek tırnak ekleme.

    values(" + no + ",'" + ad + "','" + soyad + "'," + yas + ")", baglanti);

    Teşekkürler. Ama sonuç değişmedi.
    |
    |
  • Teğmen
    198 Mesaj
    Konu Sahibine Özel
    Ben hala bu sorunumu çözemedim. Yokmu tavsiyesi olan?
    |
    |
  • Teğmen
    172 Mesaj
    textboxlarda tek tırnak varsa onu çift yap veya kodla yaptır syntax error ondan olabilir
    |
    |
  • Teğmen
    198 Mesaj
    Konu Sahibine Özel

    Nasıl yani anlamadım. Zahmet olmasa biraz detaylı anlatırmısınız.
    |
    |
    Bahsedilenler: ctn48
Sayfaya Git:
Sayfa:
1
Reklamlar
pubg mobile uc
vp satın al
Webtures SEO;SEO Nedir?
LOL RP Satın Al - LOL RP Yetkili Satış Sitesi
Bu sayfanın
Mobil sürümü
Mini Sürümü

BR3
0,500
1.2.165

Reklamlar
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.