PDA

View Full Version : این کد اپدیت مشکلش کجاست؟



RIG000
پنج شنبه 23 اردیبهشت 1389, 23:43 عصر
// (@"Update davar Set moshaverteach= moshaverteach+1 where lname =?", con);

OleDbCommand Cmd = new OleDbCommand();
con.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "\\M2r.mdb";

con.Open();
Cmd.Connection = con;
Cmd.CommandText = " Update LstKharid Set (Id,NameForoshandeh,NameKala,Tedad,Tarikh,Ghymat,P ardakhtShode,BaghiMandeh,Tozihat)" +


" values (@NameForoshandeh,@NameKala,@Tedad,@Tarikh,@Ghymat ,@PardakhtShode,@BaghiMandeh,@Tozihat)";
// Cmd.Parameters.AddWithValue("Id", nameForoshandeTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("NameForoshandeh",nameForoshandeTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("NameKala",nameKalaTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("Tedad",tedadTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("Tarikh",tarikhTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("Ghymat",ghymatTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("PardakhtShode",pardakhtiTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("BaghiMandeh",baghimandeTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("Tozihat",tozihatTextBox.Text.Trim());
Cmd.ExecuteNonQuery();

con.Close();
اقا مدت هاست گیر این اپدیتم خستم کرده برنامه هم میزارم رو برنامه تست کنین تو قسمت لیست خرید . کد Mr و پسورد هم 12345 هستش در ضمن من نمیتونم گزارشگیری کنم چه ویزاردی نمیشه اینکارو کرد بدونه کد نویسی . ؟ ممنون اگه کمک میکردین

hadisadaghatmehr
جمعه 24 اردیبهشت 1389, 01:22 صبح
دوست عزیز شکل کلی دستور آپدیت اشتباهه باید فیلد ها رو به همراه مقدارشون یک به یک ارسال کنی مانند:
update tbl1 set ID=text1.text,name=text2.text,................
همچنین قسمت ارسال پارامتر ها رو حذف کن برای راحتی کارت یه مثال تو فایل متنی میذارم

csharpprogramer88
جمعه 24 اردیبهشت 1389, 09:05 صبح
سلام
نميدونم برادر يا شايد هم خواهر ، وقتي براي برنامه ات پسوورد ميزاري و در سايت قرار مي دي هركي ميتونه دانلود كنه پسوورد را هم بگو.
بگذريم ، براي دستور آپديت ، شكل نوشتاري شما براي ست كردن فيلد ها اشتباه بود و همينكه يك شرط براي آپديت نگذاشتيد
شكل دستور آپديت :

Update tblname set column1=value1,column2=value2 , بقيه فيلدهات where كدام ركود آپديت شود



cmd.CommandText = "update LstKharid set id='" + txtid.Text + "',NameForoshandeh='" + nameForoshandeTextBox.Text + "',NameKala='" + nameKalaTextBox.Text + "',Tedad='" + tedadTextBox.Text + "',Tarikh='" + tarikhTextBox.Text + "',Ghymat='" + ghymatTextBox.Text + "',PardakhtShode='" + pardakhtiTextBox.Text + "',BaghiMandeh='" + baghimandeTextBox.Text + "',Tozihat='" + tozihatTextBox.Text + "' where id=" + dataGridViewX1.Rows[dataGridViewX1.CurrentRow.Index].Cells[0].Value.ToString();
cmd.ExecuteReader();
con.Close();
dataGridViewX1.Refresh();//نشان دادن فوري پس از آپ ديت
con.Close();
MessageBox.Show("اطلاعات با موفقيت ويرايش شدند");
}


دوست من برنامه شما را بخاطر پسوورد نتونستم اجرا كنم ، ولي براي شرط، من در نظر گرفتم كه ركورد فعلي ديتاگريد را داريد آپديت مي كنيد يعني مقدار كليد اصلي كه در گريد نشان داديد با مقدار كليد اصلي جدول شما يكسان است .
مشكلي داشتيد پيام خصوصي بديد

RIG000
جمعه 24 اردیبهشت 1389, 13:42 عصر
پورد تو بانک هست
1- Mr
2- 12345
یوز و پسورده

RIG000
جمعه 24 اردیبهشت 1389, 22:05 عصر
پس هستش 12345
و یوزر Mr

hadisadaghatmehr
جمعه 24 اردیبهشت 1389, 23:54 عصر
سلام آقا یا خانم
من که به سوالت جواب دادم همون طور که عرض کردم شکل کلی دستورت اشتباهه
شکل درستشو گذاشتم:قلب:

RIG000
شنبه 25 اردیبهشت 1389, 00:05 صبح
این با وبی بود شما نوشتی اگه بشه برنامه رو دانلود کنید و درستش میکنین؟ راستش نتونستم تطبیقش بدم !!!!!!!

csharpprogramer88
دوشنبه 27 اردیبهشت 1389, 00:33 صبح
دوست عزيز كد آپديت منو كه برات فرستادم از فيلدهاي خودت استفاده كردم فقط كافي كپي كني البته درسته كه بانكت اكسس هست ولي به سادگي ميتوني تغييرش بدي

RIG000
دوشنبه 27 اردیبهشت 1389, 00:48 صبح
قبلا هم روش حرف زده بودم نمیدونم اصلا این برنامه قاطی داره کشته منو

mohitlog
دوشنبه 27 اردیبهشت 1389, 10:29 صبح
Update davar Set moshaverteach= moshaverteach+1 where lname =?", con);

OleDbCommand Cmd = new OleDbCommand();
con.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "\\M2r.mdb";

con.Open();
Cmd.Connection = con;
Cmd.CommandText = " Update LstKharid Set (Id,NameForoshandeh,NameKala,Tedad,Tarikh,Ghymat,P ardakhtShode,BaghiMandeh,Tozihat)" +


" values (@NameForoshandeh,@NameKala,@Tedad,@Tarikh,@Ghymat ,@PardakhtShode,@BaghiMandeh,@Tozihat)";
// Cmd.Parameters.AddWithValue("Id", nameForoshandeTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("NameForoshandeh",nameForoshandeTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("NameKala",nameKalaTextBox.Text.Trim());
Cmd.Parameters.AddWithValue("Tedad",tedadTextBox.Text.Trim());


cmd.parameterd.addwithvalue("@name",nameValue.text);


(cmd.parameterd.addwithvalue("@id",id.text)




sqlcommand cmd = new sqlcommand;

cmd.commandtext="update table set name=@name .........where id=@id




بصورت بالا پارامترهارو میسازی و میاری تو کویری

الان باید کار کنه