تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] الربط ب ADODB في الفيجوال دوت نت -ممكن شيئ ؟ -
#1
Exclamation 
السلام عليكم

مرحبا إخواني

بعد إنتقالي من الفيجوال 6 إلى الدوت نت
اشتقت لطريقة ربط قواعد البيانات القديمة
الشيئ الذي جعلني أبحث عن دورة الربط ب ADODB
و الحمد لله كل شيئ تمام

فقط ظهور البيانات في الداتاغريد لم يشتغل بالطريقة العادية
فالداتاغريد تبقى فارغة حتى بعد أن قمت بوضع هذا الكود

DataGridView1.DataSource = rs





أين الخطأ إخواني جزاكم الله خيرا
الرد
تم الشكر بواسطة:
#2

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

   rs.CursorLocation = ADODB.CursorLocationEnum.adUseClient

   cn.Open("provider = Microsoft.ACE.OLEDB.12.0;" & "Data Source =" & Application.StartupPath & "\bd.mdb")

   rs.Open("select * from Table1", cn, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)

   If cn.State = 1 Then MsgBox("connet")

   DataGridView1.DataSource = RS2DT(rs)

End Sub

Private Function RS2DT(ByVal rs As ADODB.Recordset) As DataTable
Dim dt As New DataTable
If rs.RecordCount > 0 Then
On Error Resume Next
For Each f As ADODB.Field In rs.Fields
dt.Columns.Add(f.Name, rs.Fields(f.Name).Value.GetType)
Next
For i = 1 To rs.RecordCount
Dim dr As DataRow
dr = dt.NewRow()
dt.Rows.Add(dr)
Next
For i = 0 To dt.Rows.Count - 1
For Each f As ADODB.Field In rs.Fields
dt.Rows(i)(f.Name) = rs.Fields(f.Name).Value
Next
rs.MoveNext()
Next
End If
Return dt
End Function



Private conStr As String = "provider = Microsoft.ACE.OLEDB.12.0;" & "Data Source =" & Application.StartupPath & "\bd.mdb;"

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   Dim sqlStr As String = "select * from Table1"
   Dim dpt As New OleDb.OleDbDataAdapter(sqlStr, conStr)
   Dim dt As New DataTable
   dpt.Fill(dt)
   DataGridView1.DataSource = dt
End Sub

الرد
تم الشكر بواسطة: kslawy , sniperjawadino
#3
السلام عليكم

أخي sami2015 . كود متعوب عليه أخي . وأقل شيئ هو شكرك وتقييمك
جزاك الله خيرا

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

وأشكرك كثيير
الرد
تم الشكر بواسطة: sami2015
#4
يمكنك أن تلاحظ من خلال كود تحويل البيانات اللي وضعه لك الأخ sami2015 أن الداتا غريد لا تقبل مصدر بيانات من نوع RecordSet
لأنها من جيل الدوت نت فقط

احسن حاجة تعملها تبحث عن دروس Linq to sql في اليوتيوب (ابحث باللغة الانجليزية تجد الكثير) ستحس عندها بسهولتها. وتغنيك عن التحويل والتبديل كما في ADODB
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد
تم الشكر بواسطة: sami2015 , sniperjawadino
#5
أخي kslawy شكرا على نصيحتك , سأبحث عن هذه الدروس
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ممكن حل السؤال HudaALslman 2 78 منذ 3 ساعة مضت
آخر رد: HudaALslman
  مشكله عند عمل مشروع جديد في الفيجوال بيسك 2015 Emam emam 3 66 منذ 5 ساعة مضت
آخر رد: Emam emam
  [VB.NET] ممكن كود تسجيل الدخول لموقع تويتر عبر httpwebrequst الماجيك مسعد 4 132 08-12-18, 02:24 AM
آخر رد: الماجيك مسعد
Photo ممكن حل لمشكلة رسالة التفعيل للديف اكسبرس سلامه محمد11 1 57 26-11-18, 03:15 AM
آخر رد: elgokr
  ممكن اعرف ما هو باترين هذا الرابط ابو روضة 2 118 24-11-18, 12:22 AM
آخر رد: ابو روضة
  [سؤال] استاذ عبد العزيز البسكري وحريف برمجة ممكن سؤال اسامه الهرماوي 7 147 23-11-18, 07:40 PM
آخر رد: اسامه الهرماوي
  [VB.NET] الفرق بين فيجول 2008 و2012 بالنسبة للكوادات الربط ب access test6 1 67 19-11-18, 05:31 PM
آخر رد: ابو يوسف النواوي 2
  [VB.NET] ممكن كود لجعل حجم الفورم لايتغير sari 6 1,248 17-11-18, 02:57 AM
آخر رد: Samy_Amin
  ممكن اعرف ما هو الخطأ هنا ابو روضة 9 249 16-11-18, 04:02 AM
آخر رد: ابو روضة
  محتاج اضافة داخل الفيجوال بيسك 2010 Mohamed Magdy 2 79 14-11-18, 02:55 PM
آخر رد: Mohamed Magdy

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


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