none
Sql like sorgusunda parametre kullanımı RRS feed

  • Soru

  •   protected void arama()
            {
                DataTable dt = new DataTable();
                string aranan = Request.QueryString["ara"].ToString().Trim();;
                string sorgu = "select * from omu_mesaj where onay='true' and arsiv='false' and yazi like '%"+@ara+"%' order by " + sirala() + " desc ";
                dt = VeriTabani.Veri_Ara(aranan, sorgu); 
    }
     public static DataTable Veri_Ara(string deger, string sorgu)
            {
                SqlConnection baglanti = new SqlConnection("Data Source=localhost;Initial Catalog=omu;Integrated Security=True");
                SqlCommand komut = new SqlCommand(sorgu, baglanti);
                komut.Parameters.AddWithValue("@ara", deger);
                SqlDataAdapter da = new SqlDataAdapter(komut);
                DataTable dt = new DataTable();
                da.Fill(dt);
                return dt;
            }
    Sql sorgusunda @ara parametresi kullanıyorum ve parameters.addwithvalue ile sitedeki textboxtan gelen değeri atıyorum. Daha güvenli olsun diye böyle yaptım fakat kod çalışmadı. Like hariç diğer sorgularda çalışıyor yukardaki kodlarda çalışmıyor. Yardımcı olursanız sevinirim

    30 Ekim 2012 Salı 16:35

Yanıtlar

  • Selam,

    yazi like @ara order by

    ...

    komut.Parameters.AddWithValue("@ara", "%" + deger +"%");

    böyle bi dene



    "Basitçe açıklayamıyorsan eğer, yeterince anlayamamışsındır." Alb. Einstein
    http://www.tiravoglu.com

    30 Ekim 2012 Salı 17:33