PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : Ado در دلفی (بانک اطلاعاتی)



TAHA
04-07-2010, 01:47 PM
مروری بر ADO

ADO و یا به عبارتی ActiveX Data Object رابط كاربری سطح بالای مایكروسافت برای دستیابی به بانك های اطلاعاتی است. ADO - كه بر اساس فناوری OLE DB مایكروسافت پیاده سازی شده است - علاوه بر دستیابی به بانك های اطلاعاتی رابطه ای و غیر رابطه ای، دستیابی به پست الكترونیكی و فایل سیستمها و اشیاء شخصی را فراهم می سازد. اگر بخواهیم از Access یا از Sql Server مایكروسافت استفاده كنیم، ADO قطعا مزایای بسیاری برای ما خواهد داشت. اما نكته منفی در مورد ADO آنست كه در Linux یا سیستم های عامل دیگر قابل استفاده نیست.
مدل برنامه سازی ADO بر پایه چند شیء استوار است، كه روشهایی را برای دستیابی به انواع منابع داده ای فراهم می سازند. برخی از این اشیاء به قرار زیرند:
· شیء Connection كه نمایانگر اتصال به منابع داده ای با استفاده از رشته های اتصال است.
· شیء Command كه امكان كار بر روی منابع داده ای را فراهم می سازند. مانند: عملیات حذف، درج، پرس و جو، بروز رسانی و . . .
· شیء Recordset كه نتیجه فرمان Query است. هر Recordset را می توان یك جزء ساخت Table یا Query در نظر گرفت.
چند جزء ساخت كه در برنامه ها و مثالهای آتی استفاده خواهیم كرد را به طور خلاصه معرفی می كنیم:

اجزای ساخت تب Data Control
این اجزای ساخت كه Data-Aware نامیده می شوند، اجزای ساختی هستند كه عموما مشابه آنها را در تب standard می بینیم. اما به گونه ای تغییر یافته اند تا محتوای داده های یك Dataset را نمایش یا تغییر دهند. به عنوان مثال از DBEDIT و DBDEMO برای نمایش یك ركورد استفاده می شود. اما از DBGRID زمانی استفاده می شود كه بخواهیم محتـوای كل یك Dataset را نمایش دهیم.
بیـــشتر این اجزای ساخت را می توان به وســـــیله همان اجزا ساخت موجود در تب Standard پیاده سازی كرد. لذا از آنها به جز DBGRID كمتر استفاده خواهیم كرد.

اجزا ساخت تب Dataset
دلفی برای ایجاد برنامه های كاربردی مبتنی بر ADO چهار جزء Dataset معرفی كرده است:
· TADODataset
· TADOTable
· TADOQuery
· TADOStoredProc
تمام این اجزا برای بازیابی، نمایش و تغییر داده ها طراحی شده اند، که می توانند از طریق خصوصیت Connection string خود مستقیماً با منبع داده ها ارتباط برقرار كنند.

جزء ساخت DataSource
این جزء ساخت مكانیزمی برای مرتبط كردن اجزای ساخت Dataset به اجزا ساخت Data-Aware - كه داده ها را نمایش می دهند - فراهم می سازد.

برقراری اتصال با بانك اطلاعاتی
همانطور كه عنوان شد اگرچه هر جزء ساخت Dataset خود مستقیماً می تواند به بانك اطلاعاتی وصل شود، اما ما برای این منظور از جزء ساخت ADOConnection موجود در تب ADO استفاده می كنیم. در این صورت اجزاء Dataset به جای برقراری ارتباط مستقیم با بانک اطلاعاتی به این جزء متصل می شوند. این عمل فواید بسیاری دارد. از جمله اینکه در صورت تغییر پپدا کردن رشته ارتباطی بانک اطلاعاتی تنها کافیست این جزء منفرد را تغییر دهیم. در حالت قبلی باید رشته ارتباطی تک تک اجزای Dataset را تغییر می دادیم.
روال كار بدین صورت است:
1. ابتدا یك جزء ساخت ADOConnection روی فرم قرار داده، و روی آن دو بار كلیك می كنیم. پنجره ای مشابه شكل 1 ظاهر می شود.
2. سپس روی Build كلیك می كنیم تا پنجره شماره 2 ظاهر شود. فرض می کنیم از پایگاه داده Microsoft Access استفاده می كنیم. در صفحه جدید گزینه Microsoft jet 4.0 Ole DB Provider را انتخاب می كنیم.
3. Next را كلیك كرده، در صفحه بعد - که در شكل 3 نمایش داده شده - از طریق دكمه Browse فایل mdb مربوط به Microsoft Access را انتخاب می كنیم.
4. برای آنكه از اتصال موفق پایگاه داده مطمئن شویم دكمه Test Connection را كلیك می كنیم.
5. در تب Advanced طریقه دستیابی به پایگاه داده را - مانند شکل ۴ - مشخص می كنیم.
6. اكنون OK را كلیك می كنیم.
7. روی ADOConnection كلیك كرده، و از طریق Object Inspector خاصیت LoginPrompt را False، و ارزش خاصــیت Connected را True می كنیم.
8. اكنون از تب ADO یك ADOTable، از تب DataAccess یك DataSource، و از تب DataControl یك DBGrid روی فرم قرار می دهیم.
9. از طریق Object Inspector مقدار خاصیت Connection جزء ADOTable1 را ADOConnection1 قرار داده، و در خاصیت Table Name یكی از جداول پایگاه داده را برمی گزینیم.
10. بر روی DataSource كلیك كرده، خاصیت DataSet آنرا به ADOTable1 تغییر می دهیم.
11. بر روی DBGrid كلیك كرده خاصیت DataSource آنرا به DataSource1 تغییر می دهیم.
12. بالاخره ADOTable1 را انتخاب كرده و ارزش خاصیت Active آنرا True قرار می دهیم. اگر جدول مورد نظر دارای داده باشد، آن داده ها در DBGrid نمایش داده می شوند.

http://pnu-club.com/imported/mising.jpg


موتور بانك اطلاعاتی JET معمولا با بانك اطلاعاتی Microsoft Access مرتبط است، و از MS Access 97 , 2000 , 2003 و نرم افزارهای راه اندازی ISAM (اختصار Index Sequential AccessMethod) پشتیبانی می كند. لذا این موتور شامل نرم افزارهای راه اندازی Paradox, dBase, Access و Excel بوده، و از متن نبز پشتیبانی می كند. برای آنكه این موتور را با هر بانك اطلاعاتی به غیر از Microsoft Access به كار ببرید، كافیست در پنجره Data Link Properties و در تب All خاصیت Extended Properties را مقدار دهی كنید. مثلا برای استفاده از Excel آنرا به Excel 8.0 و برای استفاده از متن به Text تغییر دهید.