En iyi yanıtlayıcılar
Id almıyor nerede hata yapıyorum?

Soru
-
Server Error in '/' Application.
Incorrect syntax near '='. (Select * from Kontratlar Where KontratId=)
hatasını alıyorum
Problemimi biliyorum. Id almıyor ama bir türlü sorunu çözemedim
Kontratdetay.aspx?KontratId=4 şeklinde otomatik sorunsuz Id yide problemsiz gönderiyorum sayfaya
DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=" + KontratId);
DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=4"); şeklinde kendim save lersem açıyor ama otomatik idi alamıyorum. Id yide problemsiz gönderiyorum sayfaya
Kodlarım aşağıdadır.
using System; using System.Data; using System.Data.SqlClient; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; public partial class Admin_Kontratdetay : System.Web.UI.Page { SiteAyar system = new SiteAyar(); public string KontratId = ""; protected void Page_Load(object sender, EventArgs e) { if (!isPostBack) { DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=" + KontratId); if (dr != null) { trlDairesi.Text = dr["Dairesi"].ToString(); trlMahallesi.Text = dr["Mahallesi"].ToString(); trlSokagi.Text = dr["Sokagi"].ToString(); trlCinsi.Text = dr["Cinsi"].ToString(); ltrlKirayaVerenAdiSoyadi.Text = dr["KirayaVerenAdiSoyadi"].ToString(); ltrlKirayaVerenTc.Text = dr["KirayaVerenTc"].ToString(); ltrlKirayaVerenIkamet.Text = dr["KirayaVerenIkamet"].ToString(); ltrlKiraciAdiSoyadi.Text = dr["KiraciAdiSoyadi"].ToString(); ltrlKiraciIkametgah.Text = dr["KiraciIkametgah"].ToString(); ltrlKiraciİsAdres.Text = dr["KiraciİsAdres"].ToString(); ltrlBirAylikKiraRakam.Text = dr["BirAylikKiraRakam"].ToString(); ltrlBirAylikKiraYazi.Text = dr["BirAylikKiraYazi"].ToString(); ltrlBirsenelikKiraRakam.Text = dr["BirsenelikKiraRakam"].ToString(); ltrlBirsenelikKiraYazi.Text = dr["BirsenelikKiraYazi"].ToString(); ltrlOdemeSekli.Text = dr["OdemeSekli"].ToString(); ltrlKiraMuddeti.Text = dr["KiraMuddeti"].ToString(); ltrlaslangictarihi.Text = dr["Baslangictarihi"].ToString(); ltrlSimdikiDurumu.Text = dr["SimdikiDurumu"].ToString(); ltrlNeİcinKullanacagi.Text = dr["NeİcinKullanacagi"].ToString(); ltrlyilinkirasi.Text = dr["tarihindenitibaren"].ToString(); ltrloraninda.Text = dr["oraninda"].ToString(); ltrlyilkirasiayliknet.Text = dr["yilkirasiayliknet"].ToString(); ltrlodenecektir.Text = dr["odenecektir"].ToString(); ltrlnakit.Text = dr["nakit"].ToString(); ltrlkarsiligi.Text = dr["karsiligi"].ToString(); ltrlgunu.Text = dr["gunu"].ToString(); ltrlbankasi.Text = dr["bankasi"].ToString(); ltrlsubesi.Text = dr["subesi"].ToString(); ltrlnoluhesabina.Text = dr["noluhesabina"].ToString(); ltrladinayatirilacaktir.Text = dr["adinayatirilacaktir"].ToString(); ltrlmahkemeleri.Text = dr["mahkemeleri"].ToString(); ltrlKiraciAdiSoyadi0.Text = dr["KiraciAdiSoyadi"].ToString(); ltrlKirayaVerenAdiSoyadi0.Text = dr["KirayaVerenAdiSoyadi"].ToString(); } else Response.Redirect("Kontratlar.aspx"); } } public bool isPostBack { get; set; } }
nerede hata yapıyorum ne yapmam gerekiyor.
Yanıtlar
-
public string KontratId = "";
Bu satırı silin.
DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=" + Request["KontratId"]);
bu satırı da bu şekilde düzenleyin.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak İşaretleyen Özgür Tekbaş 7 Mart 2014 Cuma 15:43
-
GetDataRow methodunuzu görmek lazım. O methoda Command parametreli bir overload yazın. Commandı dışarda hazırlayıp methoda verin. Commanda parametre eklemek için ise (SqlCommand için);
SqlCommand cmd = new SqlCommand("select * from Tablo1 Where alan1 = @parametre1 and alan2 = @parametre2"); cmd.Parameters.AddWithValue("@parametre1", textBox1.Text); cmd.Parameters.AddWithValue("@parametre2", DateTime.Today); var kayıtlar = sistem.GetDataRow(cmd);
gibi.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak İşaretleyen Özgür Tekbaş 7 Mart 2014 Cuma 15:43
Tüm Yanıtlar
-
Incorrect syntax near '='. (Select * from Kontratlar Where KontratId=)
hatasını alıyorum
Problemimi biliyorum. Id almıyor ama bir türlü sorunu çözemedim
Kontratdetay.aspx?KontratId=4 şeklinde otomatik sorunsuz Id yide problemsiz gönderiyorum sayfaya
DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=" + KontratId);
DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=4"); şeklinde kendim save lersem açıyor ama otomatik idi alamıyorum. Id yide problemsiz gönderiyorum sayfaya
Kodlarım aşağıdadır.using System; using System.Data; using System.Data.SqlClient; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; public partial class Admin_Kontratdetay : System.Web.UI.Page { SiteAyar system = new SiteAyar(); public string KontratId = ""; protected void Page_Load(object sender, EventArgs e) { if (!isPostBack) { DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=" + KontratId); if (dr != null) { trlDairesi.Text = dr["Dairesi"].ToString(); trlMahallesi.Text = dr["Mahallesi"].ToString(); trlSokagi.Text = dr["Sokagi"].ToString(); trlCinsi.Text = dr["Cinsi"].ToString(); ltrlKirayaVerenAdiSoyadi.Text = dr["KirayaVerenAdiSoyadi"].ToString(); ltrlKirayaVerenTc.Text = dr["KirayaVerenTc"].ToString(); ltrlKirayaVerenIkamet.Text = dr["KirayaVerenIkamet"].ToString(); ltrlKiraciAdiSoyadi.Text = dr["KiraciAdiSoyadi"].ToString(); ltrlKiraciIkametgah.Text = dr["KiraciIkametgah"].ToString(); ltrlKiraciİsAdres.Text = dr["KiraciİsAdres"].ToString(); ltrlBirAylikKiraRakam.Text = dr["BirAylikKiraRakam"].ToString(); ltrlBirAylikKiraYazi.Text = dr["BirAylikKiraYazi"].ToString(); ltrlBirsenelikKiraRakam.Text = dr["BirsenelikKiraRakam"].ToString(); ltrlBirsenelikKiraYazi.Text = dr["BirsenelikKiraYazi"].ToString(); ltrlOdemeSekli.Text = dr["OdemeSekli"].ToString(); ltrlKiraMuddeti.Text = dr["KiraMuddeti"].ToString(); ltrlaslangictarihi.Text = dr["Baslangictarihi"].ToString(); ltrlSimdikiDurumu.Text = dr["SimdikiDurumu"].ToString(); ltrlNeİcinKullanacagi.Text = dr["NeİcinKullanacagi"].ToString(); ltrlyilinkirasi.Text = dr["tarihindenitibaren"].ToString(); ltrloraninda.Text = dr["oraninda"].ToString(); ltrlyilkirasiayliknet.Text = dr["yilkirasiayliknet"].ToString(); ltrlodenecektir.Text = dr["odenecektir"].ToString(); ltrlnakit.Text = dr["nakit"].ToString(); ltrlkarsiligi.Text = dr["karsiligi"].ToString(); ltrlgunu.Text = dr["gunu"].ToString(); ltrlbankasi.Text = dr["bankasi"].ToString(); ltrlsubesi.Text = dr["subesi"].ToString(); ltrlnoluhesabina.Text = dr["noluhesabina"].ToString(); ltrladinayatirilacaktir.Text = dr["adinayatirilacaktir"].ToString(); ltrlmahkemeleri.Text = dr["mahkemeleri"].ToString(); ltrlKiraciAdiSoyadi0.Text = dr["KiraciAdiSoyadi"].ToString(); ltrlKirayaVerenAdiSoyadi0.Text = dr["KirayaVerenAdiSoyadi"].ToString(); } else Response.Redirect("Kontratlar.aspx"); } } public bool isPostBack { get; set; } }
- Birleştiren Önay YALÇINERModerator 2 Mart 2014 Pazar 20:56 aynı soru
-
public string KontratId = "";
Bu satırı silin.
DataRow dr = system.GetDataRow("Select * from Kontratlar Where KontratId=" + Request["KontratId"]);
bu satırı da bu şekilde düzenleyin.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak İşaretleyen Özgür Tekbaş 7 Mart 2014 Cuma 15:43
-
-
-
-
GetDataRow methodunuzu görmek lazım. O methoda Command parametreli bir overload yazın. Commandı dışarda hazırlayıp methoda verin. Commanda parametre eklemek için ise (SqlCommand için);
SqlCommand cmd = new SqlCommand("select * from Tablo1 Where alan1 = @parametre1 and alan2 = @parametre2"); cmd.Parameters.AddWithValue("@parametre1", textBox1.Text); cmd.Parameters.AddWithValue("@parametre2", DateTime.Today); var kayıtlar = sistem.GetDataRow(cmd);
gibi.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak İşaretleyen Özgür Tekbaş 7 Mart 2014 Cuma 15:43