تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مكونات Devart للتعامل مع قواعد البيانات
#1


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

بداية هي تتعامل مع قواعد البيانات التالية .


Oracle


mysql


PostregSql



Sqlite



Db2


SqlServer


طبعا كلكم تعرفون قواعد البيانات هذه .
لدي تعقيب بسيط
Sqllit افضل من Access بمئات المرات ، أخف واسرع واكثر أمانا وتباثا انها سريعة جدا في جلب البيانات وحفظها وتنفع مع المشاريع الصغيرة والمتوسطة
فكم من مرى تنكرت Access لملفاتها ، عادي جدا عطب الملفات فيها كما ان حجم قاعدة البيانات كبير نسبيا مع مشروع لارقام الهواتف او حفظ الاكواد او حتى مبيعات ومشتريات .

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

نص الاتصال لهذه المكونات

كود :
public void CreateMySqlConnection()
{
 string myConnString1 =
    "User Id=root;Host=localhost;Database=Test;";
 MySqlConnection myConnection1 = new MySqlConnection(myConnString1);
 myConnection1.Open();
}

[Visual Basic]

كود :
Public Sub CreateMySqlConnection()
 Dim myConnString1 As String = _
     "User Id=root;Host=localhost;Database=Test;"
 Dim myConnection1 As New MySqlConnection(myConnString1)
 myConnection1.Open()
End Sub

او كما بالشكل التالي
كود :
public void CreateMySqlConnection()
{
    MySqlConnectionStringBuilder myCSB = new MySqlConnectionStringBuilder();
    myCSB.Port = 3307;
    myCSB.Host = "localhost";
    myCSB.UserId = "root";
    myCSB.Password = "mypassword";
    myCSB.Direct = true;
    myCSB.Compress = true;
    myCSB.Database = "demobase";
    myCSB.MaxPoolSize = 150;
    myCSB.ConnectionTimeout = 30;
    MySqlConnection myConnection = new MySqlConnection(myCSB.ConnectionString);
}

[Visual Basic]

كود :
Public Sub CreateMySqlConnection()
    Dim myCSB As MySqlConnectionStringBuilder = New MySqlConnectionStringBuilder
    myCSB.Port = 3307
    myCSB.Host = "localhost"
    myCSB.UserId = "root"
    myCSB.Password = "mypassword"
    myCSB.Direct = True
    myCSB.Compress = True
    myCSB.Database = "demobase"
    myCSB.MaxPoolSize = 150
    myCSB.ConnectionTimeout = 30
    Dim myConnection As MySqlConnection = New MySqlConnection(myCSB.ConnectionString)
End Sub


مع ملاحظة بالامكان الاتصال مرئيا بدون كتابة الكود ، وتختلف البارمترات بحسب نوع قاعدة البيانات .

تاتي الحزمة مع مجموعة مكونات كالتالي .



مكون للاتصال ومكون الاوامر ومحول البيانات وكل ما تحتاج تقريبا ، كما مجهزة ببعض المعالجات لانشاء الاستعلامات والشفرات وغيرها .
يمكنك مرئيا ربط مكون الاتصال بمصدر البيانات تم ربط محول البيانات بمصدر الاتصال فيعطيك اسماء الجداول او مكان لانشاء استلام خاص .
يمكنك ان تربط محولين للبيانات بجداول مترابطة وتخبره باسماء الحقول المطلوبة وسيقوم بفلترة البيانات عنك .
وبعدها تربط الادوات بمحول البيانات مباشرة او عن طريق مكون اخر BindingSouce مثلا .
يأتي معه DataSet خاصة ايضا .
وبعدها كل ماتحتاجه لحفظ البيانات هو سطر برمجي واحد
DataAdapter.updaet لا تحتاج حتى الى كتابة اسم الجدول لانه موجود لديه

فيها الكثير الذي تحتاج الى اكتشافه


صورة لنافذة الاتصال



رابط الموقع لمزيد من المعلومات

https://www.devart.com/dotconnect/
الرد }}}
#2
تسلم يدك
دائما تاتي بالجديد

اخي الغالي 

انا استخدم قاعدة بيانات اكسس لبرنامج محاسبي صغير   ولكن يعمل علية 3 اجهزة  في نفس الوت شبكة داخلية 


لو قمت بتغييرها الى sqlite    يبدو انها تقفل قاعدة البينات عند اي عملية حتى تنتهي حسب ما اعرف. وهذا قد يسبب مشكلة في اتصال اكثر من مستخدم في نفس الوقت.
هل هذا صحيح
الرد }}}
#3
حياك الله اخ سندباد

قاعدة بيانات Access اعتقد لا تسمح الا بعشرة مستخدمين فقط .
Sqlite اداءها ضعيف عند العمل على الشبكات و لا تستطيع خدمة الكثير من المستخدمين في وقت واحد حيث أنها لا تسمح بأكثر من كاتب واحد في نفس الوقت 
لأنها تقوم بقفل قاعدة البيانات عن الكتابة حال ضغط المستخدم على زر الإرسال أو نحوه
لكن بالمقابل يجب أن نتذكر أن هذا القفل يستغرق جزءا بسيطا من الثانية أي بضعة من الملليثانية 
يعني عند الحفظ او الاضافة تلك اللحظة فقط
ولكن عندك خيارات كثيرة وانواع كثيرة من قواعد البيانات التي هي افضل من Access بمئات المرات وهي مجانية
لديك مثلا FireBird مجانية ومفتوحة المصدر وانا افضلها على SQlserver وتدعم الشبكات بقوة 
كما يمكن استخدامها Embdeed بدون الحاجة الي تتبيث السيرقر
الرد }}}
تم الشكر بواسطة: عبدالله الدوسري , sendbad100
#4
العميل له دوره واختيارة .

العميل يفضل في المقام الأول أوراكل .
وفي المقام الثاني اسكيوال سيرفر .

لأنه آمنه كما انتشر عنها عند العامة .
الرد }}}
تم الشكر بواسطة: viv , viv , عبدالله الدوسري
#5
إقتباس :العميل يفضل في المقام الأول أوراكل .

وفي المقام الثاني اسكيوال سيرفر .

عندما تريد ان تقنع مشتري ان سيارة مرسيدس جيدة ومريحة للسفر لن تجد صعوبة ان ثتنيه عن عزمه في شراء BMW
فايربيرد لا تحتاج الى مديح يكفي ان تعلمه بقوتها وجودتها وخفتها وصغر مكون تثببيتها ولن تجد صعوبة في ذلك .
الرد }}}
تم الشكر بواسطة: عبدالله الدوسري
#6
جميلة جداً مواضيعك , بارك الله فيك , ويعطيك ألف عافية , جميل الإلمام من باب العلم بإمكانيات قواعد البيانات المختلفة حتى و كنت لن تستخدمها , معلومات مفيدة . +1
الرد }}}
تم الشكر بواسطة: viv , viv
#7
إقتباس :جميل الإلمام من باب العلم بإمكانيات قواعد البيانات المختلفة حتى و كنت لن تستخدمها

اخ الدوسري لا اعلم ان كنت جربت فايربيرد ام لا ، وانصحك بتجربتها انها رائعة وجميلة وممتعة
البرمجة فيها ممتعة جدا .
هل تعلم ان فيها مكون لاقتناص الاحداث تقوم في الـ Trigger الخاص بالاضافة او التعديل بانشاء متغير .
وبعدها تخبر FireBird Event ان هذا المتغير هو للاضافة او التعديل .
اذا حدث اضافة او تعديل تقوم بما يلزم مثلا تحديث البيانات التي في الشاشة هي المشكلة غالباً .
المستخدمون يقومون بتحديث البيانات وهذه التغييرات لا تظهر بالاجهزة الطرفية 
وجدت شخص ذات مرة يستخدم Timer للتحديث في منظومة بعد 4 الالاف سجل انهارت المنظومة ولم تعدل تستطيع العمل .
حتى البرامج التي تقوم بانشاء قواعد هذه البيانات مرئية وليست مثل الـ SqlServer البارمترات والمتغيرات وكل الاشياء تتم مرئيا
او بالكود انت حر 
يقولون من جربها مرة لا يستطيع الابتعاد عنها يدور ويدور ويعود لها
الرد }}}
#8
شوقتنا لها ،، راح اجربها بإذن الله
الرد }}}
#9
(02-10-18, 06:17 PM)viv كتب : هل تعلم ان فيها مكون لاقتناص الاحداث تقوم في الـ Trigger الخاص بالاضافة او التعديل بانشاء متغير .
وبعدها تخبر FireBird Event ان هذا المتغير هو للاضافة او التعديل .
اذا حدث اضافة او تعديل تقوم بما يلزم مثلا تحديث البيانات التي في الشاشة هي المشكلة غالباً .
المستخدمون يقومون بتحديث البيانات وهذه التغييرات لا تظهر بالاجهزة الطرفية 
وجدت شخص ذات مرة يستخدم Timer للتحديث في منظومة بعد 4 الالاف سجل انهارت المنظومة ولم تعدل تستطيع العمل .
حتى البرامج التي تقوم بانشاء قواعد هذه البيانات مرئية وليست مثل الـ SqlServer البارمترات والمتغيرات وكل الاشياء تتم مرئيا
او بالكود انت حر 
يقولون من جربها مرة لا يستطيع الابتعاد عنها يدور ويدور ويعود لها

فايربيرد مشكورة جدا ولا شك في قوتها

الدوت نت فيها مثل هذا
ابحث عن observable collection

الرد }}}
#10
(02-10-18, 06:17 PM)viv كتب :
إقتباس :جميل الإلمام من باب العلم بإمكانيات قواعد البيانات المختلفة حتى و كنت لن تستخدمها

اخ الدوسري لا اعلم ان كنت جربت فايربيرد ام لا ، وانصحك بتجربتها انها رائعة وجميلة وممتعة
البرمجة فيها ممتعة جدا .
هل تعلم ان فيها مكون لاقتناص الاحداث تقوم في الـ Trigger الخاص بالاضافة او التعديل بانشاء متغير .
وبعدها تخبر FireBird Event ان هذا المتغير هو للاضافة او التعديل .
اذا حدث اضافة او تعديل تقوم بما يلزم مثلا تحديث البيانات التي في الشاشة هي المشكلة غالباً .
المستخدمون يقومون بتحديث البيانات وهذه التغييرات لا تظهر بالاجهزة الطرفية 
وجدت شخص ذات مرة يستخدم Timer للتحديث في منظومة بعد 4 الالاف سجل انهارت المنظومة ولم تعدل تستطيع العمل .
حتى البرامج التي تقوم بانشاء قواعد هذه البيانات مرئية وليست مثل الـ SqlServer البارمترات والمتغيرات وكل الاشياء تتم مرئيا
او بالكود انت حر 
يقولون من جربها مرة لا يستطيع الابتعاد عنها يدور ويدور ويعود لها



Big Grin متفق معك .
لكن وضعي مع قواعد البيانات ------>  SQL Server حصرياً , طبيعة عملي. لذلك لا أشعر بالإنجذاب الشديد لقواعد البيانات الأخرى . ليس لشيء معين , لكن خارج نطاق إهتماماتي , كما ذكرت ظروف العمل .
لكن معرفة معلومات مثل ما تفظلت بطرح هذا الموضوع , أكيد الواحد لا يمانع أبداً معرفة المزيد عن ماذا تفعل أنظمة قواعد البيانات الأخرى , بالعكس شيء جميل .

وبخصوص الميزة التي ذكرتها : ( مكون لاقتناص الاحداث )
الـ SQL Server يدعم مثل هذة الأمور , وكذلك الـ NET. تحتوي على كائن يدعى ( SqlDependency ) تدعم نفس الخاصية.

يعني بإمكان عمل شات على الشبكة المحلية فقط .

هذة الميزة تقوم بإشعال حدث لديك في البرنامج إذا حدث أي تغيير على الجدول المستهدف في قاعدة البيانت , ( يعني لا تحتاج أن تستعلم كل فترة عن البيانات في الجدول )   
 طبعاً هناك خيارات كثيرة , مثلاً تحدد إذا حصل Update فقط , أو إدراج فقط , ومن هذا القبيل , وفي البرنامج تستطيع أن تعرف نوع الـ Action الذي حدث على الجدول , وأمور أخرى .

SqlDependency :
كود :
   ' Create and bind the SqlDependency objectto the command object.
   dependency = New SqlDependency(cmd)
   AddHandler dependency.OnChange, AddressOf DependencyOnChange
الرد }}}
تم الشكر بواسطة: viv , rnmr , محمد كريّم


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  طلب طريقة ترحيل البيانات من جدول الي جدول اخر في قاعدة بيانات اخر ahmed201 7 2,996 29-03-23, 04:02 PM
آخر رد: sanyor77
Lightbulb [كورس] (SQL) كتب لغة تصميم قواعد البيانات العلائقية Structured Query Language rabia al hamdani 0 718 10-01-23, 02:52 AM
آخر رد: rabia al hamdani
  [سؤال] ممكن احد يحل مشكلة تنسيق البيانات ؟ red apple 0 856 31-10-22, 03:05 PM
آخر رد: red apple
  [سلسلة تعليمية] شروحات قواعد بيانات بموقعي اسير السراب 0 1,186 19-01-21, 09:14 PM
آخر رد: اسير السراب
  [سؤال] إستفسار عن خصائص قاعدة البيانات ZaerAllail 1 2,123 17-01-21, 04:35 PM
آخر رد: moosa_alabri
  بخصوص قواعد بيانات قسم الامتحانات Moneam 0 1,439 14-03-20, 03:03 AM
آخر رد: Moneam
  دورة في قواعد البيانات من الصفر oneyemenweb2 2 2,315 22-02-20, 11:42 PM
آخر رد: alshishiny
  نسخة احتياطية من قواعد البيانات ماريا Backup dbmaria الكاتب 2 2,619 10-07-19, 01:57 AM
آخر رد: الكاتب
  [Acces2010] مشكلة في قاعدة البيانات لا تعمل محمد الطبرقي 5 3,099 22-01-19, 12:39 PM
آخر رد: محمد الطبرقي
Question [سؤال] كيفية التعامل مع قواعد البيانات ahmed.m 0 1,910 24-12-18, 11:27 AM
آخر رد: ahmed.m

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


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