PDA

View Full Version : یه نگاه به این کد میندازی



sunboy
دوشنبه 16 شهریور 1383, 18:43 عصر
سلام

اقا من زیاد وارد نیستم مشکل این کد می تونید بگید


private void send_Click(object sender, System.EventArgs e)
{
SqlConnection sqlcon = new SqlConnection("server=(local);uid=sa;pwd=;database=lahijanbanktes t");x
SqlDataAdapter sqldap = new SqlDataAdapter("select * from userinfo",sqlcon);x
DataTable dt = new DataTable("userinfo");x
sqldap.Fill(dt);x
DataRow dr = dt.NewRow();x
dr["name"] = txtname.Text;x
dr["lname"] = txtlname.Text;x
dr["city"] = txtcity.Text;x
dr["username"] = txtuser.Text;x
dr["password"] = txtpass.Text;x
dt.Rows.Add(dr);x
sqldap.Update(dt);x
}

و خطای که می ده



Update requires a valid InsertCommand when passed DataRow collection with new rows.x

و


Line 95: dr["password"] = txtpass.Text;x
Line 96: dt.Rows.Add(dr);x
Line 97: sqldap.Update(dt);x // This Is Error Line
Line 98: }
Line 99: }


ممنون می شم کمکم کنید

Vahid_Nasiri
سه شنبه 17 شهریور 1383, 19:13 عصر
گل پسر!
سعی کن از دستورات SQL‌ برای Insert و Update و کلا *تمام* کارهای دیتابیسی استفاده کنی. این روش هایی که نوشتی به ارث رسیده از ADO قبلی است. سعی کن فراموشش کنی.

اما در مورد خطای شما:
Update‌ در اینجا به معنای ایجاد تغییرات روی دیتایی است که وجود دارد (به صورت پیش فرض).
شما باید InsertCommand را برای DataAdapter مشخص کنید تا بفهمد که می خواهید چیزی را insert کنید.
موفق باشید.

sunboy
سه شنبه 17 شهریور 1383, 21:25 عصر
ممنونم وحید جان

درمورد حرفت من به این روش ادت کرد تا بیام یا عالمه دوستور SQL بنویسم ولی چشششششششششششم رو چشم حرف اقا وحید کی میتونه زمین بنداز

نوکرتم به مولا :wink:

sunboy
سه شنبه 17 شهریور 1383, 21:48 عصر
حالا وحید جان می تونی بگی فرقشون چیه خوب هردوتاش یک کار رو می کنند حالا از نظر من این که راحت تر تا بیایی اون همه دستور SQL بنویسی تازه خیلی هم خطای Syntax پیش می اد ؟؟؟؟؟؟؟


مرسی :heart: :flower:

Vahid_Nasiri
چهارشنبه 18 شهریور 1383, 18:01 عصر
دستت که به SQL روان شد یواش یواش می ری سراغ stored procedure . حتی ساده ترین کارهای برنامه رو هم با رویه های ذخیره شده انجام می دی. به شدت روی سرعت تاثیر دارد. (باید تست کنی...)