C#nedir?com Homepage
Forum Home Forum Home > C# / .NET > Visual C#
  New Posts New Posts RSS Feed - Sql e update etme!!
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Sql e update etme!!

 Post Reply Post Reply
   

Author
Message
beta89 View Drop Down
Newbie
Newbie


Joined: 12 Eylül 2012
Status: Offline
Points: 13
Post Options Post Options   Thanks (0) Thanks(0)   Quote beta89 Quote  Post ReplyReply Direct Link To This Post Topic: Sql e update etme!!
    Posted: 12 Eylül 2012 at 11:02
Selam arkadaşlar. Benim sorum aslında oldukça basit ama önceden .net le uygulama yaptığımdan biraz kafam karıştı =)
Ben sql e insert işlemi için şu kodları kullandım.
ArrayList arSorgu = new ArrayList();
            ArrayList arParameters = new ArrayList();
            try
            {

                arSorgu.Add(@" INSERT INTO Kisiler (isim,soyisim,meslek,adres,il,ilçe,telno)
                               VALUES(@isim,@soyisim,@meslek,@adres,@il,@ilçe,@telno)");


                var param = new SqlParameter[]
                 {
                            new SqlParameter ("isim",Convert.ToString(TextBoxisim.Text)),
                            new SqlParameter("soyisim",Convert.ToString(TextBoxsoyisim.Text)),
                            new SqlParameter("meslek",Convert.ToString(TextBoxmeslek.Text)),
                            new SqlParameter("adres",Convert.ToString(TextBoxadres.Text)),
                            new SqlParameter("il",Convert.ToString(TextBoxil.Text)),
                            new SqlParameter("ilçe",Convert.ToString(TextBoxilçe.Text)),
                            new SqlParameter("telno",Convert.ToString(TextBoxtelno.Text)),
                };


                _dbClass.ExecuteNonQueryParams(arSorgu, arParameters);

                arParameters.Add(param);


 Şuan hatasız çalışıyor bu. Fakat update işlemini aynı şekilde yapamıyorum.  arsorgu kısmına ne yazmam gerekiyo acaba?
Back to Top
OguzK View Drop Down
Senior Member
Senior Member


Joined: 12 Nisan 2012
Status: Offline
Points: 420
Post Options Post Options   Thanks (0) Thanks(0)   Quote OguzK Quote  Post ReplyReply Direct Link To This Post Posted: 12 Eylül 2012 at 11:12
Sorgu kısmında UPDATE tablo_adi SET sutun_adi = yeni_deger, digersutunadi=digeryenideger WHERE sutun_adi = gecerli_deger şeklindeki bir sorgu ile yapabilirsin sanırım.
Yalnız
var param = new SqlParameter[]

                 {
                            new SqlParameter ("isim",Convert.ToString(TextBoxisim.Text)),
                            new SqlParameter("soyisim",Convert.ToString(TextBoxsoyisim.Text)),
                            new SqlParameter("meslek",Convert.ToString(TextBoxmeslek.Text)),
                            new SqlParameter("adres",Convert.ToString(TextBoxadres.Text)),
                            new SqlParameter("il",Convert.ToString(TextBoxil.Text)),
                            new SqlParameter("ilçe",Convert.ToString(TextBoxilçe.Text)),
                            new SqlParameter("telno",Convert.ToString(TextBoxtelno.Text)),
               };
bu alanda neden .ToString kullandın anlamadım textbox içindeki değer zaten string olarak gelir?

Edited by OguzK - 12 Eylül 2012 at 11:14
Dehanın 10'da 1'i yetenek 10'da 9'u da çalışmaktır. Albert Einstein

Oğuz KURTCUOĞLU | Software Developer
Resital Bilgisayar Eğitim LTD. ŞTİ.
www.rst.com.tr
Back to Top
beta89 View Drop Down
Newbie
Newbie


Joined: 12 Eylül 2012
Status: Offline
Points: 13
Post Options Post Options   Thanks (0) Thanks(0)   Quote beta89 Quote  Post ReplyReply Direct Link To This Post Posted: 12 Eylül 2012 at 11:21
Okul zamanı ne olursa olsun hep onu yazdırırdı hocamız sanırım ordan kalan saçma bi alışkanlık, haklısınız =)
 ben aslında şu şekilde yaptım ve çalıştırdım;
cmd.CommandText = "Update Kisiler Set isim='" + TextBoxisim.Text + "',soyisim='" + TextBoxsoyisim.Text + "',meslek='" + TextBoxmeslek.Text + "',adres='" + TextBoxadres.Text + "',il='" + TextBoxil.Text + "',ilçe='" + TextBoxilçe.Text + "',telno='" + TextBoxtelno.Text + "' where id='" + textBox1.Text + "'";

fakat insert işleminde olduğu gibi yapmam gerekiyo, atamaları paramatre array ine atarak yani.
Back to Top
beta89 View Drop Down
Newbie
Newbie


Joined: 12 Eylül 2012
Status: Offline
Points: 13
Post Options Post Options   Thanks (0) Thanks(0)   Quote beta89 Quote  Post ReplyReply Direct Link To This Post Posted: 13 Eylül 2012 at 15:16
hallettim sonunda =)
Back to Top
MightWind View Drop Down
Groupie
Groupie


Joined: 20 Haziran 2012
Status: Offline
Points: 140
Post Options Post Options   Thanks (0) Thanks(0)   Quote MightWind Quote  Post ReplyReply Direct Link To This Post Posted: 13 Eylül 2012 at 17:35
Originally posted by beta89 beta89 wrote:

Okul zamanı ne olursa olsun hep onu yazdırırdı hocamız sanırım ordan kalan saçma bi alışkanlık, haklısınız =) ben aslında şu şekilde yaptım ve çalıştırdım;cmd.CommandText = "Update Kisiler Set isim='" + TextBoxisim.Text + "',soyisim='" + TextBoxsoyisim.Text + "',meslek='" + TextBoxmeslek.Text + "',adres='" + TextBoxadres.Text + "',il='" + TextBoxil.Text + "',ilçe='" + TextBoxilçe.Text + "',telno='" + TextBoxtelno.Text + "' where id='" + textBox1.Text + "'";fakat insert işleminde olduğu gibi yapmam gerekiyo, atamaları paramatre array ine atarak yani.


Bu şekilde kullanman sıkıntı çıkarır, tavsiye edilmeyen bir kullanım şeklidir.
Bilgin olsun.
Back to Top
OguzK View Drop Down
Senior Member
Senior Member


Joined: 12 Nisan 2012
Status: Offline
Points: 420
Post Options Post Options   Thanks (0) Thanks(0)   Quote OguzK Quote  Post ReplyReply Direct Link To This Post Posted: 13 Eylül 2012 at 17:58
Originally posted by MightWind MightWind wrote:

Originally posted by beta89 beta89 wrote:

Okul zamanı ne olursa olsun hep onu yazdırırdı hocamız sanırım ordan kalan saçma bi alışkanlık, haklısınız =) ben aslında şu şekilde yaptım ve çalıştırdım;cmd.CommandText = "Update Kisiler Set isim='" + TextBoxisim.Text + "',soyisim='" + TextBoxsoyisim.Text + "',meslek='" + TextBoxmeslek.Text + "',adres='" + TextBoxadres.Text + "',il='" + TextBoxil.Text + "',ilçe='" + TextBoxilçe.Text + "',telno='" + TextBoxtelno.Text + "' where id='" + textBox1.Text + "'";fakat insert işleminde olduğu gibi yapmam gerekiyo, atamaları paramatre array ine atarak yani.


Bu şekilde kullanman sıkıntı çıkarır, tavsiye edilmeyen bir kullanım şeklidir.
Bilgin olsun.


.ToString() metodu yüksek sayıda kayıt bulunan veritabanında ciddi şekilde performans kaybına neden olur. Boxing/unboxing bir araştırın :)

:) Arkadaşında belirttiği gibi bu şekilde injection a maruz kalırsınız :) insertteki sorguyu update ile değiştirin bunda bisey yok parametreleri insertteki gibi atayın tekrar. Dahada yapamazsanız oguz@hobysoft.com adresine mail atarsanız yardımcı olurum. Foruma sürekli bakamıyorum çünki.

Edited by OguzK - 13 Eylül 2012 at 18:00
Dehanın 10'da 1'i yetenek 10'da 9'u da çalışmaktır. Albert Einstein

Oğuz KURTCUOĞLU | Software Developer
Resital Bilgisayar Eğitim LTD. ŞTİ.
www.rst.com.tr
Back to Top
beta89 View Drop Down
Newbie
Newbie


Joined: 12 Eylül 2012
Status: Offline
Points: 13
Post Options Post Options   Thanks (0) Thanks(0)   Quote beta89 Quote  Post ReplyReply Direct Link To This Post Posted: 14 Eylül 2012 at 10:03
Çok teşekkür ederim ilgilendiğiniz için, tavsiye ettiğiniz şekilde uyguladım bende =) Sorunsuz çalışıyor.
Back to Top
 Post Reply Post Reply
  Share Topic   
   


Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 11.01
Copyright ©2001-2014 Web Wiz Ltd.