Incorrect syntax near the keyword 'From' hatası

0

Merhabalar.

 Benim projem sorunsuz çalışıyorken 2 gün sonra açtığımda executeReader sorun çıkartmaya başladı. Hata ise bu;  

 

Incorrect syntax near the keyword 'From'

 

Haberler.aspx.cs->

SqlBaglantısı baglan = new SqlBaglantısı();
        protected void Page_Load(object sender, EventArgs e)
        {
            SqlCommand cmdmg = new SqlCommand("Select * From Haberler", baglan.baglan());
            SqlDataReader drmg = cmdmg.ExecuteReader();

            rp_Haberler.DataSource = drmg;
            rp_Haberler.DataBind();

Hata alınan satır altı çizili kısım dediğim gibi düzgün çalışan bir kısımdı. Sadece burası değil tüm sayfalarda aynı sorunu yaşadım.

Acaba sebebi nedir yardımcı olursanız sevinirim.

caglacaglar caglacaglar (5)
6 yıl önce sordu

  • Sorun devam ediyor mu? alattin 6 yıl önce

Toplam 1 Cevap


0

Kodunu şu şekilde düzenlesen çok daha iyi olur:

protected void Page_Load(object sender, EventArgs e)
    {
        using (var conn = new SqlConnection("server=.\\SQLEXPRESS;Database=haberler;Integrated Security=SSPI"))
        using (var cmd = conn.CreateCommand())
        {
            conn.Open();
            cmd.CommandText = "SELECT * From Haberler";

            using (var reader = cmd.ExecuteReader())
            {
                Repeater1.DataSource = reader;
                Repeater1.DataBind();
            }
        }
    }

Senin verdiğin kodda yaptığın bağlantı yöntemi sorunlara gebe. Normalde aldığın Incorrect syntax near the keyword 'From' hatası SQL sorgunda sorun olduğunda alırsın. Fakat senin SQL sorgun düzgün.

Ama bunun yanında bağlantıyı açman ve daha sonra kapatmıyor olman, yönetilemez kaynaklara karşı bir şey yapmıyor olman sorun çıkartıyordur.

using ifadesi bu anlamda önemli bir ifade.Connection gibi nesnelerin işi bittiğinde kaynakları senin için boşaltır.  Kendi kodunu yukarıdaki gibi düzenleyebilirsin.

alattin alattin (16999)
6 yıl önce cevaplandı

    üyelik gerektirir

    Cevap yazabilmek için üye girişi yapmalısınız.

    Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
    uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol