تقييم الموضوع :
  • 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 شكرا على نصيحتك , سأبحث عن هذه الدروس
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ممكن مساعدة طباعة دفاتر صكوك مصرفية الزوي 0 22 أمس, 07:42 AM
آخر رد: الزوي
  ممكن تعرفونى ليه المشكله دى والتى تظهر بالصورة خالد كامل1 4 77 01-07-18, 03:28 AM
آخر رد: elgokr
  [سؤال] عند ربط الاكسل بالفيجول بيسك دوت نت تظهر رسالة خطأ ممكن الحل اسيل1 1 61 28-06-18, 08:23 AM
آخر رد: elgokr
Information [VB.NET] السلام عليكم اخوان ممكن مساعده بكود حذف فراس محي 3 104 27-06-18, 12:37 PM
آخر رد: boudyonline
  ممكن احد يعمل المشروع اخواني المبرمجين نور الهدى الهدى 14 451 21-06-18, 04:51 PM
آخر رد: نور الهدى الهدى
Thumbs Up [VB.NET] هل ممكن تغيير رقم الهارد عن طريق الكود رمضان محمد 0 60 15-06-18, 07:33 AM
آخر رد: رمضان محمد
  [سؤال] السلام عليكم لدي مشكل في الفيجوال بيسك safox 4 81 15-06-18, 04:54 AM
آخر رد: elgokr
  ممكن مساعدة في كود قريد فيو نور الهدى الهدى 3 91 13-06-18, 07:33 PM
آخر رد: elgokr
  [سؤال] مشكله فى ادخال قاعد البيانات الي الفيجوال Mahmoud Nasser 1 135 10-06-18, 04:34 PM
آخر رد: elgokr
  [كود] اريد كود إرسال البيانات من الفيجوال بيسك إلىPDF issamsaidd 9 297 06-06-18, 09:23 PM
آخر رد: issamsaidd

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


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