http://www.1padideh.com/index_files/essay27.htm
آموزش دلفی— درس 1
امید ولی محمدی
در این مقاله سعی شده بطور کاربردی نحوه ارتباط با یک دیتابیس ( Access) و دیدن رکوردهای جدول مورد نظر و امکان حذف , اضافه و ویرایش رکوردهای آن آموزش داده شود . برای ارتباط ما از تکنولوژی ADO استفاده کرده ایم .
از برگه ADO کامپوننت ADOConnection را انتخاب و بر روی فرم قرار می دهیم . خاصیت ConnectionString کامپوننت یاد شده را انتخاب و از پنجره Data link properties گزینه Mocrosoft Jet 4.0 OLEDB provider را انتخاب و دکمه next را کلیک می کنیم .
در قسمت بعد که همان برگه Connectin پنجره data link properties می باشد , دیتابیس خود را انتخاب می کنیم ( گزینه اول ) . قسمت username و password را خالی می گذاریم . در صورت کلیک کردن دکمه test connection و برقرار بودن ارتباط پیغام test connection successed خواهد آمد .
بعد از بستن پنجره data link properties خاصیت Login promt کامپوننت ADOConnetcion1 را False می کنیم تا در هنگام True کردن خاصیت Connected پنجره username و password ظاهر نشود . حالا Connected را True می کنیم .
سالک : می توانید در عکس بالا فقط shop.mdb را باقی بگذارید تا با انتقال پوشه پروژه به همراه فایل دیتابیس مشکل آدرس دهی پیدا نشود.
-----------------------------------------
از برگه ADO کامپوننت ADOTable را بر روی فرم قرار می دهیم .
خاصیت Connection را ADOConnection1 انتخاب می کنیم . حال خاصیت Tablename شامل جداول دیتابیس ما می باشد . جدول مورد نظر را انتخاب می کنیم .
سالک: بله. باید ADOTable اضافه شود و صفت Connection آن برابر ADOConnection1 شود و صفت تیبل آن به یکی از تیبل های دیتابیس تنظیم شود.(اگر ADOConnection1 درست وصل شده باشد اتوماتیک نام تیبلها ها لیست می شود و ما فقط انتخاب می کنیم.) و صفت Active ابزار ADOTable را در آخر اگر True کنیم نباید اررور دهد.
می توانستیم برای ارتباط با یک جدول از ADOQuery هم استفاده کنیم . انتخاب ADOQuery این مزیت مهم را دارد که می توانستیم از دستورات SQL هم استفاده کنیم . استفاده از ADOQuery را در مقاله بعدی آموزش خواهیم داد.
سالک : در حقیقت در این حالت ADOQuery به جای ADOTable نقش بازی می کند. در ADOTable ما صفت Table را تنظیم کردیم ولی در ADOQuery می آییم صفت SQL را مثلا به :
تنظیم می کنیم و بعد صفت Actice را True می کنیم.
بعد هم DataSource را به ADOQuery وصل می کنیم(قبلا به ADOTable وصل بود.)
صفت Active ادوکوئری بعد دستکاری دیتاسورس ممکنه فالس بشه که مجدد ترو کنید.
***************************************
تا اینجا ما با دیتابیس ارتباط برقرار کرده ایم . همینطور به کمک ADOTable توانسته ایم به جدول مورد نظر متصل شویم . برای دیدن رکودهای جدول انتخاب شده ساده ترین و معمول ترین راه استفاده از DBGrid می باشد .
***************************************
برای اینکار به برگه Data Access رفته و کامپوننت Datasource را روی فرم قرار می دهیم . خاصیت DataSet کامپوننت یاد شده را ADOTable1 انتخاب می کنیم .
و حالا سراغ برگه Data Contorol می رویم . کامپوننت Dbgrid را بر روی فرم قرار می دهیم و اندازه آنرا تنظیم می کنیم . خاصیت DataSource کامپوننت Dbgrid را DataSource1 انتخاب می کنیم . اگر خاصیت Active کامپوننت ADOTable را True کنید رکوردهای جدول خود را در DBGrid خواهید دید .
=========================================
اما چند کار دیگر لازم است که انجام دهیم . اول خاصیت BIDImode کامپوننت DBGrid را dbRightToLeft انتخاب می کنیم , تا نمایش رکوردهای ما از راست به چپ شود . بر روی DBGrid1 کلیک راست می کنیم و از menu گزینه اول یعنی Columns Editor را انتخاب می کنیم , تا پنجره مربوط به آن ظاهر شود .
Add All Fields را انتخاب می کنیم تا تمامی فیلدهای جدول مورد نظر نمایش داده شود . این قسمت در شکل زیر با فلش نمایش داده شده است .
بعد از اضافه کردن فیلدها , هر کدام را که انتخاب کنیم خاصیت های آنرا می توانیم مشاهده و تغییر دهیم . برای مثال ما Caption Title فیلدهای جدول مان را در اینجا فارسی کرده ایم . شکل بالا
شما می توانید color , Width و دیگر مشخصات فیلد انتخاب شده را هم تغییر دهید .
برای حذف و اضافه و ویرایش می توانیم از کامپوننت DBNavigator که در همان برگه Datacontorols است استفاده کنیم . برای متصل کردن DBNavigator که در همان برگه Datacontorols است استفاده می کنیم .
برای متصل کردن DBNavigator به DBGrid کافیست Datasource DBNavigator1 را Datasource1 انتخاب کنید .
همانطور که دیدید در هیچ کدام از قسمت های فوق از کد نویسی استفاده نکردیم .
حالا برنامه ما برای نمایش , حذف , اضافه و ویرایش رکوردهای جدول آماده است . فقط مانده RUN کردن برنامه .
موفق باشید .