• 09-06-2015, 23:37:19
    #1
    Merhaba

    Repeater ile verileri çektim sorun yok buraya bir buton koyup id sine göre ilgili tabloda sadece gonderildi sutununu 1 olarak güncellesin istiyorum. buton koydum tıklayınca Incorrect syntax near '='. Hatası Sorunumu biliyorum Id alamıyor nerede eksik yapıyorum?

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Data.SqlClient;
    using System.Data;
    
    public partial class Admin_Onayligiderler : System.Web.UI.Page
    {
        
    
        Fonksiyon system = new Fonksiyon();
        string Id = "";
        protected void Page_Load(object sender, EventArgs e)
        {
            Hadigetir();
            Id = Request.QueryString["Id"];
    
        }
        void Hadigetir()
        {
            DataTable dtKiralik = system.GetDataTable("SELECT dbo.amortismanlar.Adi, dbo.amortismanlar.Soyadi, dbo.amortismanlar.GercekAdres, dbo.giderler.SertifikaAdi FROM dbo.amortismanlar INNER JOIN dbo.zaiyat ON dbo.amortismanlar.OgrenciID = dbo.zaiyat.OgrenciID INNER JOIN dbo.giderler ON dbo.zaiyat.SertifikaID = dbo.giderler.SertifikaID  where dbo.zaiyat.gonderildi=0 and dbo.zaiyat.Onay=1 ");
    
    
            if (dtKiralik.Rows.Count > 0)
            {
                Hadigetirtxt.DataSource = dtKiralik;
                Hadigetirtxt.DataBind();
            }
            else ltrlBilgiKiralik.Text = "Temsilcisi bulunduğunuz öğrenci şuanda yoktur.";
    
    
    
    
    
        }
    
    
    
    
    
        protected void btnGuncelle_Click(object sender, EventArgs e)
        {
            SqlConnection baglanti = system.baglan();
            SqlCommand cmd = new SqlCommand("Update zaiyat set gonderildi=@gonderildi Where Id=" + Id, baglanti);
            cmd.Parameters.Add("gonderildi", 1);
            cmd.ExecuteNonQuery();
    
    
            Response.Redirect("Onayligiderler.aspx");
        }
    }
  • 10-06-2015, 00:06:53
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sorun pek açık değil, en azından ben net olarak anlayamadım.
    Yanlış anlamadıysam belirtiğin bir kaydın güncellenmesini istiyorsun. Bunun için ya her satıra bir güncelle butonu koyup repeater'ın itemcommand event'ı ile işini halledeceksin veya her kaydın başına bir checkbox koyup tek güncelle butonu ile seçilenler arasında dönüp güncelleyeceksin.
  • 10-06-2015, 08:39:19
    #3
    page load event i ile alip atama yaptigin id degeri btnguncelle eventinin icinde kullanamazsin btn guncelle eventinin icinde degisken tanimlayip atama yap.

    rob33n gozunden nasil kacti?

    protected void btnGuncelle_Click(object sender, EventArgs e)
    {
    string idno = request.querystring["id"];

    SqlConnection baglanti = system.baglan();
    SqlCommand cmd = new SqlCommand("Update zaiyat set gonderildi = 1 Where Id=@id", baglanti);
    cmd.Parameters.Add("@id", idno);
    cmd.ExecuteNonQuery();


    Response.Redirect("Onayligiderler.aspx");
    }
  • 11-06-2015, 21:28:16
    #4
    BigCoder adlı üyeden alıntı: mesajı görüntüle
    page load event i ile alip atama yaptigin id degeri btnguncelle eventinin icinde kullanamazsin btn guncelle eventinin icinde degisken tanimlayip atama yap.

    rob33n gozunden nasil kacti?

    protected void btnGuncelle_Click(object sender, EventArgs e)
    {
    string idno = request.querystring["id"];

    SqlConnection baglanti = system.baglan();
    SqlCommand cmd = new SqlCommand("Update zaiyat set gonderildi = 1 Where Id=@id", baglanti);
    cmd.Parameters.Add("@id", idno);
    cmd.ExecuteNonQuery();


    Response.Redirect("Onayligiderler.aspx");
    }
    şimdide bunu yapınca aşağıdaki hatayı veriyor

    The parameterized query '(@id nvarchar(4000))Update zaiyat set gonderildi = 1 W' expects the parameter '@id', which was not supplied.
    
    
    
    Line 51:         SqlCommand cmd = new SqlCommand("Update zaiyat set gonderildi = 1 Where Id=@id", baglanti);
    Line 52:         cmd.Parameters.Add("@id", idno);
    Line 53:         cmd.ExecuteNonQuery();
    Line 54: 
    Line 55: 
    
    
    Source File:xxxx.cs    Line: 53
  • 12-06-2015, 12:06:38
    #5
    Bu bölümü bir label ya da alert olarak ekrana yazarmısınız ne geliyor

    Alıntı
    string idno = request.querystring["id"];
  • 14-06-2015, 21:16:52
    #6
    teşekkür ederim. biraz araştırma ile ve bigcoder in vermiş olduğu kodu kurcalayarak sorunumu çözdüm.
  • 09-05-2020, 11:59:31
    #7
    Merhaba ,
    Konu ile ilgili benim de sorunum var bir sql querym var zamanlama yaparak belli aralıkta çalışmasını istiyorum farkat "incorrect syntax near" hatası alıyorum nerde hata yapıyorum acaba sql şöyle;
    UPDATE DOSYALAR_KONTROL SET DC_ASAMA=4 WHERE DC_DS_KEY IN( SELECT
    DS_KEY
    FROM
    (SELECT DOSYALAR.*,
    DOSYALAR_KONTROL_1.*,

    (SELECT TOP 1 TV_FR_ID
    FROM DOSYALAR_TEKLIFVER
    WHERE DOSYALAR_TEKLIFVER.TV_PARCA_YOK = 0
    AND DOSYALAR_TEKLIFVER.TV_ONAY = 0
    AND DOSYALAR_TEKLIFVER.TV_DC_KEY = DC_KEY
    AND DOSYALAR_TEKLIFVER.TV_FR_ID = 1) AS FIRMAIDNO,

    (SELECT COUNT(*)
    FROM DOSYALAR_TEKLIF
    WHERE DOSYALAR_TEKLIF.UT_DC_KEY = DC_KEY) AS TOPLAMPARCA
    FROM DOSYALAR CROSS APPLY
    (SELECT TOP 1 *
    FROM DOSYALAR_KONTROL
    WHERE DC_AKTIF = 1
    AND DC_ASAMA = 3
    AND DC_DS_KEY = DOSYALAR.DS_KEY
    ORDER BY DC_ASAMA ASC, DC_SEVK_TARIH DESC) AS DOSYALAR_KONTROL_1
    WHERE DS_ACIK = 1
    AND DC_ASAMA = 3
    AND DC_AKTIF = 1
    AND DS_AKTIF = 1 ) AS DOSYALARFULL
    LEFT OUTER JOIN FIRMALAR ON FIRMALAR.FR_ID = DS_SERVIS_ID
    LEFT OUTER JOIN MARKALAR ON MARKALAR.MR_ID = DS_MARKA_ID
    LEFT OUTER JOIN MARKALAR_TIP ON MARKALAR_TIP.MT_ID = DS_MARKA_TIP_ID
    LEFT OUTER JOIN MARKALAR_MODEL ON MARKALAR_MODEL.MM_ID = DS_MODEL_ID
    LEFT OUTER JOIN FIRMALAR AS FIRMALAR_1 ON FIRMALAR_1.FR_ID = DS_SIGORTA_SIRKETI_ID
    WHERE DS_ID > 0
    AND DS_AKTIF = 1
    --AND DS_KEY = '44751D93-FD69-41A9-B680-9F1791D4CC20'
    AND GETDATE() > DATEADD( SECOND, 5, DC_TEK_FINISH )
    );

    yardımlarınızı bekliyor olacağım saygılar .