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

مشكلة فى الاستعلام

بدأه shosho842000 في 27 أبريل 2009 · 2 رد · 432 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

عايزاه اعرف ايه الغلط فى الكود دا

try

{

string str = "Data Source=SICOWIN;Initial Catalog=emp;Integrated Security=True";

SqlConnection cn = new SqlConnection(str);

cn.Open();

SqlCommand cmd = new SqlCommand("select * from stu where id='"+TextBox1.Text +"'", cn);

//cmd.Parameters.Add("@id2", SqlDbType.Int).Value = TextBox1.Text();

SqlDataReader dr = cmd.ExecuteReader();

if (dr.Read==true )

{

TextBox1.Text = dr("id");

TextBox2.Text = dr("name");

TextBox3.Text = dr("address");

TextBox4.Text = dr("email");

TextBox5.Text = dr("notes");

}

}

catch (Exception ex)

{

Response.Write(ex.Message);

}

بحيث انه بيعترض على dr وبيظهر error

مش عارفا ليه

هو المفروض دى الطريقة الصح فى الاستعلام على حاجة بحيث انه بيستعرض باقى البيانات بناء على رقم

وشكرا

#2

سبب الخطأ يكمن في انه لا يستطيع القيام بجلب البيانات كما اتوقع

والحل

قومي بوضع dr.read()

ومن ثم استخدمي dr.hasrow

SqlDataReader dr = cmd.ExecuteReader();
dr.read();															 //First Step
if (dr.HasRow)													//Second Step
{
TextBox1.Text = dr("id");
TextBox2.Text = dr("name");
TextBox3.Text = dr("address");
TextBox4.Text = dr("email");
TextBox5.Text = dr("notes");
}
#3

السلام عليكم ورحمة الله:

أختي الكريمة هناك خطأ في السطرين التالين :

SqlCommand cmd = new SqlCommand("select * from stu where id='"+TextBox1.Text +"'", cn);
cmd.Parameters.Add("@id2", SqlDbType.Int).Value = TextBox1.Text();

وهذا تصحيح الخطأ حيث يجب تحويل قيمة textBox1.Text من قيمة نصية الى عدد حسب نوع البيانات :

SqlCommand cmd = new SqlCommand("select*from stu where id=@id2", cn);
		cmd.Parameters.Add("@id2", SqlDbType.Int).Value = Int32.Parse(TextBox1.Text);

وهناك خطأ ايضا في السطر

if(dr.read=true)

حيث هي كمايلي

while(dr.Read())

وهناك خطأ ايضا في اسناد البيانات الناتجة حيث كما يلي

TextBox2.Text=dr["Name"].ToString();

ومن ثم تقومي باسناد البيانات الخرى بنفس الطريقة

تم تعديل هذه المشاركة بواسطة sufian2020 في 28 أبريل 2009 في 13:20

رَبِّ أَوْزِعْنِي أَنْ أَشْكُرَ نِعْمَتَكَ الَّتِي أَنْعَمْتَ عَلَيَّ وَعَلَى وَالِدَيَّ وَأَنْ أَعْمَلَ صَالِحًا تَرْضَاهُ وَأَدْخِلْنِي بِرَحْمَتِكَ فِي عِبَادِكَ الصَّالِحِينَ

تلاوات خاشعة مؤثرة

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