PDA

View Full Version : استفاده از متغیر در دستور INSERT INTO



Arash-For-Life
دوشنبه 09 فروردین 1389, 12:35 عصر
با سلام
من چندتا textbox در فرمم دارم و یه دکمه بنام ذخیره هم گذاشتم حالا میخوام محتویات هر تکس باکس رو در یه متغیر بگذارم و در دستور INSERT INTO استفاده کنم
وقتی از متغیر استفاده می کنم این استثنا رخ میده:

exlord
دوشنبه 09 فروردین 1389, 12:45 عصر
یکه از پارامتر هایی که پاس دادی null هستش.....

sds1920
دوشنبه 09 فروردین 1389, 12:51 عصر
چیزی که من از قسمت VALUES نفهمیدم که از چه نوعی هستند و ...ولی اگه می خوای از متغییر توی دستورات Sql استفاده کنی بهتره از PlaceHolder استفاده کنی.

Salah Sanjabian
دوشنبه 09 فروردین 1389, 12:54 عصر
اینجوری باید بنویسی


SqlCommand Cmd=new SqlCommand("Insert Into Tblsapmle (Name,Family)values('"+Strname +"','"+Strfamily+"')",Cn)


تو این عکسی که گذاشتی باید رشته ات رو از متغیر ها با + جداکنی . اونایی هم که از نوع Char هستن باید تک کوتیشن داشته باشه

saied_genius
دوشنبه 09 فروردین 1389, 16:40 عصر
من فکر مي کنم يک فيلد ID هم تعريف کرده باشي توي ديتابيس که به صورت دستي شماره مي گيرد ، و در اين ورودي اطلاعات ، آنرا وارد نکردي.

چک کن ببين تمامي فيلدهاي table بانک رو آورده اي ؟؟

موفق باشيد.

naser2009
دوشنبه 09 فروردین 1389, 19:56 عصر
[quote=Arash-For-Life;940756]با سلام
من چندتا textbox در فرمم دارم و یه دکمه بنام ذخیره هم گذاشتم حالا میخوام محتویات هر تکس باکس رو در یه متغیر بگذارم و در دستور INSERT INTO استفاده کنم
quote]دوسته من سلام
کلا پیشنهاد میکنم از Stored procedure استفاده کنی چون ممکنه مورد حملات sql injection قرار بگیری و برنامتم حالت بهتری پیدا میکنه

SqlConnection con = new SqlConnection(ConnectionClass.ConnectionString);
con.Open();
SqlCommand cmd = new SqlCommand("sp_Quizes_Insert", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@QuizTypeid",quiztypeid);
cmd.Parameters.AddWithValue("@QuizName", _Quizname);
cmd.Parameters.AddWithValue("@StartDate", _Startdate);
cmd.Parameters.AddWithValue("@ArgueDate", _Arguedate);
cmd.ExecuteNonQuery();
con.Close();
مثلا اینطوری:لبخندساده:

worldvomputer
دوشنبه 28 آذر 1390, 09:35 صبح
[quote=Arash-For-Life;940756]با سلام
من چندتا textbox در فرمم دارم و یه دکمه بنام ذخیره هم گذاشتم حالا میخوام محتویات هر تکس باکس رو در یه متغیر بگذارم و در دستور INSERT INTO استفاده کنم
quote]دوسته من سلام
کلا پیشنهاد میکنم از Stored procedure استفاده کنی چون ممکنه مورد حملات sql injection قرار بگیری و برنامتم حالت بهتری پیدا میکنه

SqlConnection con = new SqlConnection(ConnectionClass.ConnectionString);
con.Open();
SqlCommand cmd = new SqlCommand("sp_Quizes_Insert", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@QuizTypeid",quiztypeid);
cmd.Parameters.AddWithValue("@QuizName", _Quizname);
cmd.Parameters.AddWithValue("@StartDate", _Startdate);
cmd.Parameters.AddWithValue("@ArgueDate", _Arguedate);
cmd.ExecuteNonQuery();
con.Close();
مثلا اینطوری:لبخندساده:
با سلام بهترین راه اینکه اصلا کد ننویسی