تقييم الموضوع :
  • 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 ك ب / التحميلات : 456)
الرد
#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 بتشتغل معاها بنفس الطريقه مع العلم ان ملف قاعدة البيانات مش علي نفس الجهاز علي سيرفر خارجي
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  برنامج صانع الاكواد لقواعد البيانات من نوع SQL Server Compact 3.5 Codack 1 248 04-10-21, 02:07 AM
آخر رد: وعد مولود
  [مثال] طريقة الاضافةو التعديل و العرض و الحفظ داخل قاعدة البيانات SQL alims 5 1,085 16-09-21, 12:42 PM
آخر رد: alims
  [درس فيديو] طريقة حذف من داخل قاعدة البيانات alims 0 151 15-09-21, 02:20 PM
آخر رد: alims
  برنامج لنسخ البيانات من قاعدة بيانات اكسيس الي سيكوال Emam emam 2 1,538 07-06-21, 06:22 PM
آخر رد: zayedali
  [مثال] مثال لنسخ وإستعادة قاعدة البيانات ( تحديث) نسخ تلقائي للقاعدة حسب اليوم والساعة جميل علي 76 31,816 07-06-21, 03:08 PM
آخر رد: zayedali
  المساعدة في نقل البيانات العواجي 3 575 20-04-21, 04:48 PM
آخر رد: messry
  [مثال] برنامج لحرق مختلف البيانات على قرص BM Data CD Burner asmarsou 0 466 24-02-21, 12:33 PM
آخر رد: asmarsou
  لا جديد [معرفة المكرر بشبيكة البيانات DataGridView No db] سعود 9 1,780 08-01-21, 11:38 PM
آخر رد: سعود
  انشاء برنامج يقوم بتخزين البيانات في قاعدة بيانات اون لاين فاير بيس vb.net ahmadpal 1 1,778 03-12-20, 05:11 PM
آخر رد: m4n2net2000
  ارسال البيانات من datagridview الى datagridview أخرى ggtt17121985 0 727 30-10-20, 04:18 AM
آخر رد: ggtt17121985

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


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