تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
وداعا ADO.net ووداعا للعلاقات في قواعد البيانات
#1
السلام عليكم ونهاركم مبارك ان شاء الله

لانني ارى الجمود بعالمنا العربي وعدم التحرك نحو الجديد والبحث قررت ان انشر هذا الموضوع .

هل يزعجك تصميم قاعدة بيانات وانشاء الجداول والعلاقات فيما بينها ...؟
هل تزعجك الاستعلامات المعقدة بين الجداول واكواد الاتصال والحذف والتعديل ...؟

حسنا اذا انت بالمكان الصحيح .

الموضوع ليس بجديد وسبق ونشرت عنه .
انك امام ثقنية يقولون انها اسرع بملايين المرات من ثقنية Ado.Net
نحن لا نريد ان نصدق هذا .
لنقل انها اسرع ليس حتى بالالاف المرات وانما بمئات المرات .
مئات المرات استطيع ان ابصم عليها بختمي الخاص واعتمد هذا الطرح .
وفوق كل هذا هو السهولة في التعامل معها من حيث العرض والاتصال والاضافة .

نحن نتحدث عن ثقنية DB40 الكائنية .

هذا كل ماتحتاج للاتصال وانشاء قاعدة بياناتك .

كود :
Friend db As IObjectContainer = Db4oFactory.OpenFile(FileIO.FileSystem.CurrentDirectory & "\DB")


وهذه كل ماتحتاج لانشاء جدولك

كود :
Public Class Emp

   Dim _mname As String
   Public Property mname As String
       Get
           Return _mname
       End Get
       Set(value As String)
           _mname = value
       End Set
   End Property

   Dim _mdate As Date
   Public Property mdate As Date
       Get
           Return _mdate
       End Get
       Set(value As Date)
           _mdate = value
       End Set
   End Property

   Dim _pic As Byte()
   Public Property pic As Byte()
       Get
           Return _pic
       End Get
       Set(value As Byte())
           _pic = value
       End Set
   End Property


End Class


وهذا كل ماتحتاج لحفظ سجل جديد

كود :
Dim k As New Emp()
       k.mname = TextBox1.Text.Trim
       k.mdate = DateTimePicker1.Value
       Dim converter As New ImageConverter
       k.pic = converter.ConvertTo(PictureBox1.Image, GetType(Byte()))
       db.Store(k)

بعيدا عن التنظير دعوني اردخلكم في مثال عملي صممته على السريع من اضافة وحذف وتعديل وعرض .
لاحظ عند تشغيل المشروع اول مرة اذا لم يكن هناك قاعدة بيانات يتم انشاءها فورا .
ايضا المكتية يمكنها العمل على شبكة كذلك .

حملوه وجربوه وسوف يكون لنا حديث بعدها

لاتنسو اضافة المكتبة Db4objects.Db4o.dll من الـ Reference

   


.rar   Db4o.rar (الحجم : 562.58 ك ب / التحميلات : 605)
الرد }}}
#2
السلام عليكم اخي ابو همام
اذا كانت بهذه البساظة فالف وداع Ado.net
شكرا ياغالي
شيء غير معقول
لكن السؤال ماذا لو ان لدي جداول كثيرة وبينها علاقات؟
ان كان بالامكان كتاب او موقع يشرح هذه التقنية
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: viv , asemshahen5 , عبد العزيز البسكري
#3
إقتباس :السلام عليكم اخي ابو همام
اذا كانت بهذه البساظة فالف وداع Ado.net



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

أجل ان لم احبذ هذه الثقنية منذ اول يوم جربتها .


إقتباس :شكرا ياغالي
شيء غير معقول


الله يحفظك 


إقتباس :لكن السؤال ماذا لو ان لدي جداول كثيرة وبينها علاقات؟
ان كان بالامكان كتاب او موقع يشرح هذه التقنية

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

لازال الجميع يفكر ويحلل ويبتكر فيها
يوم امس وانا ابحث وجدت سؤال في موقع stackoverflow له تسع شهور لم يتحصل على اجابة
والسؤال يقول كيف اعدل رقم كل السجلات التي بتاريخ بين كذا وكذا .
واوجدت الحل بسرعة مع انه كان على C# وانا لا احبها ولا افهمها جيدا في العمليات الرياضية والتحويلات .
الرد }}}
#4
في المثال السابق تم تحديث الاجراء LoadData 
وبدل من ترك Result كائن من نوع Object جعلناه lList من الفئة Emp وعبارة عن Collection وهذا سوف يسهل العمل معه على مستوى المشروع .

كود :
Public Sub LoadData(Optional Found As String = "")

       Dim container As IObjectContainer = db
       Dim result As IList(Of Emp) = container.Query(Of Emp)(GetType(Emp))  )
       Try
           BindingSource1.DataSource = result
       Catch ex As Exception

       End Try

   End Sub
الرد }}}
تم الشكر بواسطة: asemshahen5 , ابراهيم ايبو
#5
صحيح انا تحدتث عن هذه الثقنية من قبل ولكن لم اجربها .
الان فقط اقوم بعمل تجارب عليها لهذا كما يقول الأجانب (Do not be shy)
اذا وجدتم فكرة يمكنكم ان تطرحوها .

حاولت الان تجربة ضم Collection من نوع String
في الفئة اضفت 

كود :
Friend arr As New List(Of String)

وفي زر الاضافة

كود :
Dim k As New Emp()
       k.mname = TextBox3.Text.Trim
       k.mdate = DateTimePicker1.Value
       k.arr.Add("BMW")
       k.arr.Add("MAZDA")

على سبيل انه يمثل عدد السيارات التي يملكها 
ولاظهارها 

كود :
Dim k As Emp = CType(result(BindingSource1.Position), Emp)
       If Not k.arr Is Nothing Then
           For i As Integer = 0 To k.arr.Count - 1
               ListBox1.Items.Add(k.arr.Item(i).ToString)
           Next
       End If
المرحلة القادمة هي ضم فئة جديدة وربطها بالفئة الاولى كا Collection يمثل بيانات جدول فرعي
لاتوجد روابط بين الجداول وانما بهذه الطريقة كل فئة تستدعيها تحمل معها كل الفئات التي بداخلها وتمثل بيانات فرعية
الرد }}}
تم الشكر بواسطة: asemshahen5 , ابراهيم ايبو
#6
قرأت مقال ان DB40 تم احتكارها من شركة ما .
ولكن هناك بديل افضل لها mongodb ويتم تحديثها باستمرار لهذا سوف ننتقل لها

https://www.tutorialspoint.com/mongodb/index.htm

للتحميل

https://www.mongodb.com/download-center/cloud
الرد }}}
#7
(27-08-19, 07:07 PM)viv كتب : قرأت مقال ان DB40 تم احتكارها من شركة ما .
ولكن هناك بديل افضل لها mongodb ويتم تحديثها باستمرار لهذا سوف ننتقل لها

https://www.tutorialspoint.com/mongodb/index.htm

للتحميل

https://www.mongodb.com/download-center/cloud

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

(26-08-19, 06:05 PM)viv كتب : السلام عليكم ونهاركم مبارك ان شاء الله

لانني ارى الجمود بعالمنا العربي وعدم التحرك نحو الجديد والبحث قررت ان انشر هذا الموضوع .

هل يزعجك تصميم قاعدة بيانات وانشاء الجداول والعلاقات فيما بينها ...؟
هل تزعجك الاستعلامات المعقدة بين الجداول واكواد الاتصال والحذف والتعديل ...؟

حسنا اذا انت بالمكان الصحيح .

الموضوع ليس بجديد وسبق ونشرت عنه .
انك امام ثقنية يقولون انها اسرع بملايين المرات من ثقنية Ado.Net
نحن لا نريد ان نصدق هذا .
لنقل انها اسرع ليس حتى بالالاف المرات وانما بمئات المرات .
مئات المرات استطيع ان ابصم عليها بختمي الخاص واعتمد هذا الطرح .
وفوق كل هذا هو السهولة في التعامل معها من حيث العرض والاتصال والاضافة .

نحن نتحدث عن ثقنية DB40 الكائنية .

هذا كل ماتحتاج للاتصال وانشاء قاعدة بياناتك .

كود :
Friend db As IObjectContainer = Db4oFactory.OpenFile(FileIO.FileSystem.CurrentDirectory & "\DB")


وهذه كل ماتحتاج لانشاء جدولك

كود :
Public Class Emp

   Dim _mname As String
   Public Property mname As String
       Get
           Return _mname
       End Get
       Set(value As String)
           _mname = value
       End Set
   End Property

   Dim _mdate As Date
   Public Property mdate As Date
       Get
           Return _mdate
       End Get
       Set(value As Date)
           _mdate = value
       End Set
   End Property

   Dim _pic As Byte()
   Public Property pic As Byte()
       Get
           Return _pic
       End Get
       Set(value As Byte())
           _pic = value
       End Set
   End Property


End Class


وهذا كل ماتحتاج لحفظ سجل جديد

كود :
Dim k As New Emp()
       k.mname = TextBox1.Text.Trim
       k.mdate = DateTimePicker1.Value
       Dim converter As New ImageConverter
       k.pic = converter.ConvertTo(PictureBox1.Image, GetType(Byte()))
       db.Store(k)

بعيدا عن التنظير دعوني اردخلكم في مثال عملي صممته على السريع من اضافة وحذف وتعديل وعرض .
لاحظ عند تشغيل المشروع اول مرة اذا لم يكن هناك قاعدة بيانات يتم انشاءها فورا .
ايضا المكتية يمكنها العمل على شبكة كذلك .

حملوه وجربوه وسوف يكون لنا حديث بعدها

لاتنسو اضافة المكتبة Db4objects.Db4o.dll من الـ Reference

شكرا جزيلا على المثال اكثر من رائع ممكن تضيف على المثال نص بحث
الرد }}}
تم الشكر بواسطة:
#8
معلش علي سؤالي طب انا لو عامل Database SQL بتشتغل معاها بنفس الطريقه مع العلم ان ملف قاعدة البيانات مش علي نفس الجهاز علي سيرفر خارجي
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سلسلة تعليمية] مشروع برنامج بحث وحذف وتحديث البيانات في فايربيس vb . net الجزء الثاني ahmadpal 1 1,641 10-04-24, 04:36 AM
آخر رد: emadahmed1995
Question [VB.NET] كيف يمكن تحديد البيانات التي اريد ان تظهر في DataGridView1 ؟ Microformt 1 103 18-03-24, 01:37 AM
آخر رد: Kamil
Question [VB.NET] كيف يمكن مسح البيانات في الجدول المجود على الفورم ؟ Microformt 1 132 03-03-24, 08:35 PM
آخر رد: Taha Okla
  اتصال قاعدة البيانات بالسرفر atefkhalf2004 10 363 25-02-24, 09:15 PM
آخر رد: atefkhalf2004
  [مثال] مثال لنسخ وإستعادة قاعدة البيانات ( تحديث) نسخ تلقائي للقاعدة حسب اليوم والساعة جميل علي 81 48,186 10-02-24, 11:26 AM
آخر رد: محمد العموري
  كيفيه عمل حفظ البيانات الخاصة بمتابعة دخول وخروج المستخدمين للبرنامج Saly nor 6 2,636 07-02-24, 05:56 PM
آخر رد: ahmedanwer
  طريقة سهلة للاتصال بقاعدة بيانات SQL مع اضافة ايقونات للتحكم في تدفق البيانات ggtt17121985 0 555 06-11-23, 10:16 AM
آخر رد: ggtt17121985
Star [مشروع] كيفية نقل البيانات الموجودة في الجداول داخل قاعدة البيانات الاولى إلى قاعدة البيانات aliday03 5 1,168 26-03-23, 03:19 PM
آخر رد: sanyor77
  مثال استيراد اى ملف اكسيل وتصدير البيانات الى ملف اكسيل new_programer 3 3,429 07-12-22, 12:19 PM
آخر رد: hoda299
  [VB.NET] اتصال قاعدة البيانات المحلية h2551996 3 1,522 07-12-22, 11:18 AM
آخر رد: h2551996

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


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