چطوری میشه فیلد بیت خالی بمونه
سلام دوستان:لبخندساده:
من یه فیلد بیت دارم برای تعیین وضعیت تاهل اشخاص که زمانی که مجرد علامن بخوره تو گرید چیزی نشون داده نشه و زمانی که متاهل علامت بخوره تو گرزید تیک بخوره
حالا در صورتی که یکی از این دو تا علامت بخورن که درست کار می کنه اما زمانی که کاربر اصلا اطلاعی نداره که شخصی که میخاد ثبت نام بشه مجرد هست یا متاهل و نمی خاد هیچ کدوم رو علامت بزنه باید چکار کنم؟ چون خطا میده
مرسی:لبخندساده:
نقل قول: چطوری میشه فیلد بیت خالی بمونه
سلام
اگر null بود ، وضعیت تاهل رو نامشخص بزنه(البته نمیدونم عملی هست یا نه)
یا فیلد ر از نوع عدد در نظر بگیرید مثلا 0 یعنی نامشخص. 1 مجرد. 2 متاهل
نقل قول: چطوری میشه فیلد بیت خالی بمونه
نقل قول:
نوشته شده توسط
M.YasPro
سلام
اگر null بود ، وضعیت تاهل رو نامشخص بزنه(البته نمیدونم عملی هست یا نه)
یا فیلد ر از نوع عدد در نظر بگیرید مثلا 0 یعنی نامشخص. 1 مجرد. 2 متاهل
ببینید منم این کد رو برای دکمه ثبت ناممم توی اون فرم گذاشتم
SqlConnection myConnection = new SqlConnection("Data Source=.;Initial Catalog=quran;Integrated Security=True");
SqlCommand objCommand = new SqlCommand();
objCommand.Connection = myConnection;
objCommand.CommandText = "INSERT INTO [teacher-shakhsi](shsh,tarikh,name,fname,marriage,basij)VALUES(@sh, @date,@nme,@fnme,@mrg,@bsj)";
objCommand.Parameters.Add(new SqlParameter("@sh", (object)textBox3.Text));
objCommand.Parameters.Add(new SqlParameter("@date", (object)maskedTextBox1.Text));
objCommand.Parameters.Add(new SqlParameter("@nme", (object)textBox2.Text));
objCommand.Parameters.Add(new SqlParameter("@fnme", (object)textBox7.Text));
if (radioButton4.Checked == true)
objCommand.Parameters.Add("@bsj", SqlDbType.Bit, 1).Value = false;
else
objCommand.Parameters.Add("@bsj", SqlDbType.Bit, 1).Value = false;
if (radioButton3.Checked == true)
objCommand.Parameters.Add("@bsj", SqlDbType.Bit, 1).Value = true;
else
objCommand.Parameters.Add("@bsj", SqlDbType.Bit, 1).Value = false;
if (radioButton1.Checked == true)
objCommand.Parameters.Add("@mrg", SqlDbType.Bit, 1).Value = false;
else
objCommand.Parameters.Add("@mrg", SqlDbType.Bit, 1).Value = false;
if (radioButton2.Checked == true)
objCommand.Parameters.Add("@mrg", SqlDbType.Bit, 1).Value = true;
else
objCommand.Parameters.Add("@mrg", SqlDbType.Bit, 1).Value = false;
myConnection.Open();
objCommand.ExecuteNonQuery();
shakhsi_Load(sender, e);
MessageBox.Show("ںلéںمں¢ ں êيهçی¢ يں©§ ¬§");
myConnection.Close();
نقل قول: چطوری میشه فیلد بیت خالی بمونه
bsj چیه؟ mrg چیه ؟ radio ها چین؟ارور داره ؟
بدون نامگذاری اصولی هیچکس از کدتون سر در نمیاره
نقل قول: چطوری میشه فیلد بیت خالی بمونه
نقل قول:
نوشته شده توسط
M.YasPro
bsj چیه؟ mrg چیه ؟ radio ها چین؟ارور داره ؟
بدون نامگذاری اصولی هیچکس از کدتون سر در نمیاره
اوه ببخشید درست می فرمایید اصلا بذارید کدم رو خلاصه تر و با توضیح بذارم
try
{
SqlConnection myConnection = newSqlConnection("Data Source=.;Initial Catalog=quran;Integrated Security=True");
SqlCommand objCommand = newSqlCommand();
objCommand.Connection = myConnection;
objCommand.CommandText = "INSERT INTO [teacher-shakhsi](marriage)VALUES(@mrg)";
if (radioButton1.Checked == true)
objCommand.Parameters.Add("@mrg", SqlDbType.Bit, 1).Value = false;
if (radioButton2.Checked == true)
objCommand.Parameters.Add("@mrg", SqlDbType.Bit, 1).Value = true;
myConnection.Open();
objCommand.ExecuteNonQuery();
shakhsi_Load(sender, e);
MessageBox.Show("ںلéںمں¢ ں êيهçی¢ يں©§ ¬§");
myConnection.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
خب ببینید من برای راحتی کار فقط فیلد تاهل رو توی کد قرار دادم و توضیحش میدم
تکست رادیو باتن 1 مجرد هست و تکست رادیو باتن 2 متاهل هست . فیلد تاهل در گرید ویو هم که چون از نوع بیت هست به صورت چک باکسی نشون داده میشه . قراره اگه کاربر مجرد رو علامت زد اون فیلد توی گرید علامت نخوره و برعکس اگه متاهل علامت خورد اون فیلد توی گرید چک بخوره
حالا یه وقتی پیش میاد که کاربر اطلاع نداره که شخصی که میخاد ثبت نامش کنه متاهل هست یا نه؟ و خود شخص هم حضور نداره
و قاعدتا باید هیچ کدوم رو علامت نزنه وقتی اینطوری امتحان می کنم این خطا رو میده:
Must declare the variable '@mrg'.
حالا اینو چکار کنم:متفکر:
نقل قول: چطوری میشه فیلد بیت خالی بمونه
من تلاشم رو کردم نشد .
البته یه راه داره (شما یه کلاس به نام teacher-shakhsi داشته باشی و اونو پر کنی(فیلد تاهل رو null بفرستی) و به متد اینسرتت بفرستی)
پیشنهاد :
این فیلد رو از نوع عددی بگیری و قراردادت این باشه :0 نا مشخص و 1 مجرد و 2 متاهل .