تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مشكله فى كود
#1
ممكن مساعده فى الكود ده
كود :
 Try
           con = New SqlConnection(cs)
           con.Open()
           cmd = New SqlCommand("Select PID, RTRIM(ProductCode),RTRIM(Productname), SubCategoryID,RTRIM(CategoryName),RTRIM(SubCategoryName), RTRIM(Description) from Category,SubCategory,Product where Category.CategoryName=SubCategory.Category and Product.SubCategoryID=SubCategory.ID order by ProductName", con)
           rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)
           dgw.Rows.Clear()

           While (rdr.Read() = True)
         
               dgw.Rows.Add(rdr(0), rdr(1), rdr(2), rdr(3), rdr(4), rdr(5), rdr(6), rdr(7))
           End While
           con.Close()
         

       Catch ex As Exception
           MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
       End Try

كنت عاوز اعرف فين المشكله مع ان الاستعلام شغال لاكن فى الفورم مش بتطلع البيانات فى dgw الى هو DataGridView
الرساله الى بتطلع بتقول index is outside the bounds of the array
ممكن حل للكود او كود بديل بنفس الاستعلام 
مع العلم انى لسه مبتدأ وناقل الكود من موقع
الرد }}}
تم الشكر بواسطة:
#2
مرحبا اخى

الخطا ان استعلمت عن سته حقول
في حين انك تريد ان تقرا ثمانيه حقول بواسطه rdr
استخدم اسماء الحقول لتعرف ان تطلب بيانات حقل موجود في الاستعلام فعلا مثل
PHP كود :
dgw.Rows.Add(rdr("ProductCode"), rdr("Productname"), rdr("SubCategoryID"), .....) 

ولكن هناك طريقه افضل لقراءه البيانات باستخدم SqlDataAdapter
الرد }}}
تم الشكر بواسطة: أبووسم , سعود الشامان , lemozza
#3
شكرا ليك اخى
بالفعل الخطأ انى استعلمت عن سبعه حقول
ونسيت عند الطلب ولم احسب الصفر Big Grin وطلبت ثمانيه من 0 الى 7
والطريقه بتاعه الاستعلام عشان العلاقات وانا لسه مبتدأ فبحاول احفظ الطرق والاكواد مع الوقت
وشكرا ليك مره ثانيه
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم