الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما هو الحل لهذه المشكلة

مغلق
بدأه محمد صلاح عبدالحميد في 7 أكتوبر 2006 · 8 رد · 675 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم عندي جدول وأريد أن أبحث على أكثر من قيمة فيه يعني بحث متقدم فأنا كتبت الكود التالي

string sqltext;
			string frage= frnametextBox .Text;
			string toage = toagetextBox .Text;
			if (frage &&toage != null)
			{sqltext= "SELECT * FROM stperinfo WHERE stage between '" + frage  +"' AND '"+toage+ "'";}

فنجح هذا الكود ولكن عندما أردت البحث بمعيار آخر في نفس الوقت نصحني أخ لي أن أن أضيف المعيار على الجملة السابقة كما يلي

if (frage &&toage != null)
			{sqltext= "SELECT * FROM stperinfo WHERE stage between '" + frage  +"' AND '"+toage+ "'";}
			if (fname != null)
			{sqltext+= " , stname like '" +fname+"';";}

ولكن هذا الكود يبحث عن القيمة الأولى فقط ويتجاهل القيمة الثانية في البحث فما هو الحل يإخواني وجزاكم الله خيراً أرجو المساعدة

#2

السلام عليكم

قم باضافه And أو Or بين الشروط و بعضها

if (frage &&toage != null)
   {

		 AndExists = true;
		 sqltext= "SELECT * FROM stperinfo WHERE stage between '" + frage  +"' AND '"+toage+ "'";

   }
if (fname != null)
   {

	 sqltext+= " AND stname like '" +fname+"';"; // use and X or to combined conditions

   }

احذف السطر ده من الكود AndExists = true;

#3

السلام عليكم أنا جربتها ولكنها لم تعمل

فما هو الحل إذن

تم تعديل هذه المشاركة بواسطة محمد صلاح عبدالحميد في 8 أكتوبر 2006 في 10:11

#4

السلام عليكم لماذا لا يريد أحد مساعدتي

#5

أخ محمد صلاح عبدالحميد يرجى اعطاء مهلة للإخوان حتى يستطيعوا الإجابة عن تساؤلاتك

ثم أن مشكلتك في كتابة علاقة select عاود كتابتها مرة أخرى يرجى إرفاق قاعدة البيانات أو تفاصيل تعريفات الجداول لديك حتى نستطيع مساعدتك

تم تعديل هذه المشاركة بواسطة samerselo في 9 أكتوبر 2006 في 17:47

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#7

السلام عليكم أنا آسف جدا ولكني لسة مبتدئ ولذلك مستعجل على التعلم وها هو البرنامج

فأرجو منكم أن تفتحتوه وتساعدوني وجزاكم الله خيراً

studentdata.rar

#8

في التأني السلامة

وكل ما اتأنيت أتعلمت

وحاول تقرأ أكثر عشان تتعلم الصبر

في التأني السلامة

وكل ما اتأنيت أتعلمت

وحاول تقرأ أكثر عشان تتعلم الصبر

#9

اهلا يا محمد باشا

// this is the modified code under advanced search button in form2
// try this

 private void searchbutton1_Click(object sender, System.EventArgs e)
		{
			SqlConnection myconnection = new SqlConnection("server=AL_ANSAR;database=stinformation;uid=sa;pwd=ansar");
			myconnection.Open();

			// say these are the values we want to use in our search
			string fname = frnametextBox.Text;
			string kind = kindtextBox.Text;
			string address = addrtextBox.Text;
			string frage = frnametextBox.Text;
			string toage = toagetextBox.Text;
			#region Construct Sql Stmt
			// construct sql statement 
			// note: i use variables names to be fields names in the table for clarity
			string cmdText = "SELECT * FROM stperinfo";
			bool WhereExists = false;
			if (fname.Trim() !="")
			{
				cmdText += " where  fname = like '%" + fname + "%'";
				WhereExists = true;
			}
			if (kind.Trim() !="")
			{
				if (WhereExists)
				{
					cmdText += " AND  kind ='" + kind + "'";
				}
				else
				{
					cmdText += " Where kind ='" + kind + "'";
					WhereExists = true;
				}


			}
			if (address.Trim() != "")
			{
				if (WhereExists)
				{
					cmdText += " AND address = like '%" + address + "%'";
				}
				else
				{
					cmdText += " where  address = like '%" + address + "%'";
					WhereExists = true;
				}


			} 
			if (frage.Trim() != "" || toage.Trim() != "")
			{ // if one has value, set the other to 0 or as you like
				if (frage.Trim() = "") frage = "0";
				if (toage.Trim() = "") toage = "0";
				if (WhereExists)
				{
					// say age is num
					cmdText += " AND age between " + frage + " and " + toage;
				}
				else
				{
					cmdText += " where age between " + frage + " and " + toage;
				}
			}
			// end here
			#endregion

			// now cmdText is ready to use
			SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(cmdText, myconnection);
			DataSet myDataSet = new DataSet();
			mySqlDataAdapter.Fill(myDataSet, "stperinfo");
			DataView dv = new DataView(myDataSet.Tables["stperinfo"]);
			dataGrid1.DataSource = dv;



		}



	}

هذا الموضوع مغلق.

مواضيع مشابهة