المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : برمجة تطبيقات قواعد البيانات بإستخدام ado (الجزء1 : مقدمة)


Lam.Abdeldjalil
19-08-2010, 11:00 AM
السلام عليكم و رحمة الله
مقدمة بسيطة حول ADO
dbGo/ ADO
هي مكونات توفر الوصول إلى البيانات من خلال بنية الـ Ado
مكونات dbGo تغلف كائنات Ado في هندسة قواعد البيانات في الدلفي
ADO
(Microsoft ActiveX Data Objects )
هو مجموعة من كائنات COM التي تصل إلى البيانات عبر مزود OLE DB
OLE DB
(Object Linking and Embedding, Database )
عبارة عن API مطورة من طرف Microsoft للوصول إلى قواعد البيانات العلائقية وغير العلائقية
وهي عبارة عن مجموعة واجهات تطبيق بإستخدام (COM)
و قد صمم ليكون بديلا أعلى مستوى و معوض للـ ODBC
ينقسم إلى : مستهلكين Consumers و مزودات Providers
Consumers هي التطبيقات التي تحتاج الولوج إلى قواعد البيانات
Provider هو المكون الذي يوفر البيانات للمستهلكين Consumers
و توجد مزودات Providers لأغلب قواعد البيانات الموجودة
Db2/Oracle/SqlSever/Postgre/FireBird/Sybase/Sqlite/access..
كما يمكن الإتصال بكل قواعد البيانات التي لها درايفر ODBC عبر الجسر OLE DB-ODBC
OLE DB هو جزء من حزمة (MDAC)
MDAC
(Microsoft Data Access Components )
هو مجموعة من تكنولوجيات مايكروسوفت التي تتفاعل معا على شكل بنية Framework تسمح للمبرجين بتوحيد و بطريقة شاملة لتطوير تطبيقات للوصول لأغلب قواعد البيانات
الإصدار المدعوم حاليا من طرف الدلفي هو 2.8 و هو آخر إصدار للـ MDAC وهو يأتي منصبا في الويندوز
و استبدل بـ WDAC في الويندوز فيستا و 7 وهو يأتي منصبا في الويندوز
WDAC
( Windows Data Access Components )
وهي تتضمن آخر إصدار لنفس التقنية ، يحتوي على بعض التغييرات للعمل في الويندوز 6 + ، ما يهمنا أنها تعادل وظيفيا MDAC 2.8
يمكنك التأكد في الرابط
http://msdn.microsoft.com/en-gb/library/ms692877.aspx
نقائص BDE/dbExpress مقارنة بـالـ dbGo
BDE
* لا يكون الإتصال بقواعد البيانات إلا عبر درايفر الـ ODBC
* إرفاق المكتبات المستعملة في كل جهاز تريد تشغيل تطبيقك به
* إضافة إلى أنه 'مات' توقف تطويره منذ مدة وإرفاقه في إصدارات الدلفي الأخيرة لا يعني أنه مازال يطور
حيث أن امباركاديرو في حد ذاتها تنصح المبرمجين المستعملين للـ BDE بالإنتقال إلى dbExpress
Warning: The Borland Database Engine (BDE) has been deprecated
so BDE will not be enhanced. For instance, BDE will never have Unicode support.
You should not undertake new development with BDE.
Consider migrating your existing database applications from BDE to dbExpress.
يمكنك التأكد في الرابط
http://docwiki.embarcadero.com/RADStudio/en/Borland_Database_Engine
dbExpress
ما سنتناول ماهي إلا نواقص مقارنة بالـ dbGo
رغم التطوير المستمر تبقي محدودة من حيث قواعد البيانات المدعومة
ASA, ASE, INTERBASE, INFORMIX, ORACLE, MYSQL, MSSQL, DB2 ,BlackfishSQL ,+FireBird (2010)

* لا نجد PostgreSQL في القائمة
* و لا نجد في القائمة قواعد البيانات المكتبية
* لا دعم للـ OLE /ODBC بإستثناء MSSQL
* إضافة إلى إرفاق المكتبات المستعملة إلى كل جهاز تشغيل فيه تطبيقك
مثال MSSQL يجب إرفاق الملفات التالية
بالنسبة للـ dbx3 --> dbxmss30.dll بالنسبة للـ dbx4 --> dbxmss.dll
+ Midas.dll إذا إستعملت client dataset
إصدارات الدلفي / MDAC :
Delphi 6 Enterprise يدعم MDAC 2.5
Delphi 7 يدعم MDAC 2.6
منDelphi 2005 إلىDelphi2010 تدعم MDAC 2.8
الويندوز / MDAC
الإصدار الذي يأتي منصبا أوتوماتيكيا مع الويندوز حسب الإصدار :
- الويندوز 2000 / Me إصدار MDAC 2.5
- الويندوز XP إصدار MDAC 2.7
- الويندوز XP SP2 إصدار MDAC 2.8
- الويندوز فيستا 7 / إصدار Windows DAC
للتحقق من إصدار الـ MDAC المنصب في الجهاز إفتح الرجيستري
HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess\F ullInstallVer
ملاحظة : يمكن أن تجد إصدار آخر غير المذكور أعلاه بعد إجراء تحديث / تنصيب إصدار جديد للأوفيس ..
المراجع : http://en.wikipedia.org/wiki/Microsoft_Data_Access_Components http://msdn.microsoft.com/en-gb/library/ms692877.aspx
http://docwiki.embarcadero.com/RADStudio/en/DbGo_Overview
http://docwiki.embarcadero.com/RADStudio/en/Working_with_ADO_Components

Lam.Abdeldjalil
19-08-2010, 11:03 AM
* مكونات ADO :
- ADOConnection : مكون الإتصال بقاعدة البيانات .
- ADOTable : يستعمل للوصول لبيانات جدول واحد في قاعدة البيانات .
- ADOQuery : يستعمل للوصول لبيانات جدول واحد أو أكثر في قاعدة البيانات بإستخدام جمل الإستعلام SQLإضافة إلى تنفيذ جمل (DDL) /(DML)SQL .
- ADOCommand : يقوم بتنفيذ أوامر SQL (DDL) و أي إستعلام لا يرجع مجموعة نتائج .
- ADODataSet : يستعمل للوصول لبيانات جدول واحد في قاعدة البيانات أو أكثر و للوصول لبيانات جدول واحد أو أكثر في قاعدة البيانات بإستخدام جمل الإستعلام SQL و يقوم بتنفيذ أوامر SQL بإستثناء (DML)SQLو أي إستعلام لا يرجع مجموعة نتائج عكس ADOCommand .
- ADOStoredProc : خاص بالإجراءت المخزنة .
- RDSConnection : وصلةRemote Data Service .


جدول مكونات الـ ADO و ما يقابلها في BDE و DBExpress
http:///img838/2456/ado.jpg
-- تعني لا يوجد مقابل .



ترقبوا الدرس القادم إن شاء الله حول ( ADOTable / ADOConnection )


و السلام عليكم

mourad123
21-02-2011, 10:58 AM
بارك الله فبك
ما العلاقة بين ado وdbGo

Lam.Abdeldjalil
21-02-2011, 06:08 PM
السلام عليكم

ما العلاقة بين ado وdbgo هل قرأت الـ 5 سطور الأولى ؟

mourad123
25-02-2011, 05:09 PM
مكونات dbGo تغلف كائنات Ado في هندسة قواعد البيانات في الدلفي
ما ذا تقصد بتغلف أخيLam.Abdeldjali

kosama
09-12-2013, 02:54 PM
شكراً على هذا الشرح

S.FATEH
15-12-2013, 09:15 PM
السلام عليكم

Lam.Abdeldjalil انت متحيز للـ ado و قد ضلمت dbExpress لا تنضر الى dbExpress كمكونات و انما كتقنية جديدة حفض البيانات في الذاكرة يوفر فلترة سريعة + النواقص التي ذكرتها لا تقارن بالفوائد على الاقل يمكننا فعل هذا (http://www.delphi4arab.net/forum/showpost.php?p=38974&postcount=2):p