تهیه برنامه های بانک اطلاعاتی مبتنی بر Client/Server
یکی از دوستان عزیز آقاي نادري درخواست کرده اند که نحوه نوشتن برنامه های مبتنی بر Client/Server را توضیح دهم. من هم درخواست ایشان را با کمال میل تقبل کرده و توضیحاتی مختصر در این ضمینه در حدی که اصول کار مشخص شود را ارائه کرده ام:
این مقاله به کلیات مطلب اشاره کرده و کارهای اولیه و اصلی را توضیح داده است برای دانش بیشتر به کتب و مقالات و بهتر از همه به مثالها و راهنمای نرم افزارها مراجعه کنید.
در برنامه هایی که بصورت Client/Server نوشته می شوند مانیاز به آیتمهای زیر داریم:
1. یک شبکه کامپیوتری LAN :(در اینجا منظور یک شبکه با حداقل 2 کامپیوتر)
2. یک کامپیوتر سرور:
منظور از کامپیوتر سرور این نیست که حتماً سخت افزار پیشرفته داشته باشد یا حتی اینکه سیستم عامل سرور نظیر ویندوز سرور 2003 بلکه می تواند یک کامپیوتر معمولی با یک سیستم عامل معمولی مانند ویندوز XP داشته باشد. اما بهتر است که Windows Server 2003 باشد که در آن سرویس Active Directory راه اندازی گردیده شده باشد تا بتوانید یک شبکه Client/Server مبتنی بر Domain پیداه سازی کرده که می توان گفت با این روش امنیت شبکه و بانکهای اطلاعاتی موجود در کامپیوتر سرور را بالا برد. البته سعی شود بهترین کامپیوتر موجود را انتخاب کنید در ضمن سعی کنید تا حد ممکن از این کامپیوتر استفاده های جانبی نکرده و فقط موقع کار، آنرا جهت سرویس دهی روشن بگذارید. مطلب را کوتاه می کنم و فرض من در این مقاله استفاده از یک شبکه معمولی Peer To Peer با کامپیوترهای معمولی و فاقد سیستم عامل سرور.
3. یک پایگاه داده سرور
برای چنین برنامه هایی ما نیاز به یاپگاههای داده قویتر و فراتر از Access داریم پایگاه داده های که خود سروری برای پاسخ به تقاضا های و کنترل ترافیک باشند در اینجا من پایگاه معروف و قدرتمند SQL Server را معرفی می کنم. کافیست که نرم افزار آن را از بازار تهیه کرده و در یک کامپیوتر که آنرا بعنوان سرور در شبکه انتخاب کردید نصب بکنید. خدمت شما بایستی عرض کنم که حداقل اطلاعاتی که شما در مورد SQL Server باید بدانید1- ایجاد پایگاه داده جدید 2- ایجاد جدول در پایگاه داده و 3-معرفی سطح دستری کاربران است البته ایجاد ارتباط (Relationship)هم پیشنهاد می شود که فکر کنم با مراجعه به کتابهای مربوطه در عرض مدت زمان بسیار کوتاه به توانید به این منظور نایل آئید.
توجه : در هنگام نصب SQL Server از شما تقاضای وارد کردن یک نام برای آن می شود. در این مثال من اسم DaraServer را انتخاب کردم.
موارد گفته شده نیازمندیهای اولیه یک برنامه مبتنی بر Client/Server می باشد.
آغاز کار برنامه:
ما در این مثال درون سرور SQL که نام آنرا DataServer گذاشته ایم یک پایگاه داده با نام Personel ایجاد کردیم که در آن سه جدول با نامهای PInfo (اطلاعات عمومی کارمندان)، PSalary ( اطلاعات حقوق کارمندان) و PRest ( اطلاعات مرخصیها).
· ایجاد پایگاه اطلاعاتی در SQL Server
· ایجاد ارتباط بین برنامه و پایگاه داده
· افزودنTable یا Query در برنامه
· قرار دادن کنترلهای مورد نیز روی فرمها
· آغاز برنامه نویسی

ایجاد ارتباط:
در دلفی دو روش برای ایجاد ارتباط بین برنامه شما و پایگاه داده وجود دارد یکی استفاده از اجزاء dbExpress و دومی استفاده از اجزاء (dbgo) ADO می باشد. که هر دو قدرتمند و پاسخگو می باشند ما در اینجا به دلیل معروفیت و سادگی از ADO استفاده خواهیم کرد:
1. وارد دلفی شده و یک پروژه جدیدی را شروع کنید.
2. یکData Module به برنامه اضافه کنید و خاصیت Name آنرا DC بگذارید.
3. اکنون به تبADO مربوط به در دلفی 7 یا dbGo در دلفی 2006 بروید و یک شئی TADOConnection را روی صفحه DC قرار داده و نام آنرا SQLConnection بگذارید.
4. حال بر روی Connection دوبار کلیک کرده تا صفحه ای با با دو کادر ظاهر شود ... حال دکمه Build را کلیک کنید تا صفحه شکل زیر ظاهر شود که دارای 4 تب می باشد در تب اول (Provider) از لیست موجود گزینه Microsoft OLE DB Provider for SQL Server را اتخاب کرده و سپس روی Next کلیک کنید اکنون تب Connection فعال می شود در این تب تنظیمات را مطابق شکل زیر انجام دهید:
5. اکنون Ok را کلیک کنید.
6. حال شیئ SQLConnection را انتخاب کرده و خصوصیت LoginPrompt آنرا برابر با False قرار دهید در غیر ینصورت با هر بار ورد یوزر و پسورد ورود به پایگاه داده خواهد شد.
خُب به شما تبریک می گویم تا اینجا توانستید برنامه را با بانک اطلاعاتی در سرور مرتبط کنید.
7. اکنون خصوصیتهای AdoTable1 را بصورت زیر تنظیم کنید
· Name > tblPersonel
· Connection > SQLConnection
· TableName > PInfo
8. اکنون Table شما آماده است و شما کافیست روی آیکن آن دوبار کلیک کنید تا پنجره فیلدها باز شده و سپس با کلیک راست و انتخاب آیتم Add All Field نمام فیلدهای مربوط به جدول PInfo واقع در پایگاه داده Personel در سرور DataServer را اضافه کرده و آنها را ببینید.
ما باقی کارها مشابه به کار با بانکهای اطلاعاتی محلی است اما لازم به ذکر است که در ADO تنظیم خصوصیتهای CursorLocation و CursorType اهمیت ویژه ای دارد و همچنین اجزاء TADOCommand و TADOQuery بسیار پر استفاده هستند و اما مهمتر از همه اینکه شما بایستی دستورالعملهای مربوط به فرامین SQL را هر چه بیشتر بلد باشید و بتوانید در برنامه نویسی بکار ببرید قدرت و انعاف بیشتری را می توانید در تولید برنامه های Client/Server بکار بگیرید.
در انتها هم باز کردن اتصال بایستی خصوصیت Connect مربوط به شئی SQLConnection را برابر با True قرار داده و همچنین جداول را Open کنید.