بانک اطلاعاتی چیست؟
در بانک اطلاعاتی تعاریف گوناگونی شده است که تعریف زیر از همه جامع تر به نظر می رسد : بانک اطلاعاتی مجموعه ای سازمان یافته از اطلاعات و داده های مرتبط به هم است. داده ها عبارت اند از : حقایق و ارقام یک موضوع خاص و اطلاعات عبارت اند از نتایجی که از ترکیب داده ها حاصل می گردند. مؤسسات و سازمان معمولاً سیستم های اطلاعاتی خود را به دو صورت تشکیل داده از آن ها استفاده می کنند.

استفاده از سیستم های اطلاعاتی ساده
در این روش در فایل های جداگانه قرار می گیرند و برای استفاده از داده های موجود در آن فایل ها، سیستم های جداگانه ای طراحی می شوند. به این نوع سیستم های اطلاعاتی سیستم پردازش فایل ها می گویند.
استفاده از بانک های اطلاعاتی

در این روش داده های موجود، به صورت مجتمع یا بانک مورد استفاده قرار می گیرند در چنین سیستمی کاربر می تواند بدون سر درگمی با صرف وقت اندکی، اطلاعات مورد نیاز خود را از داده های موجود در بانک اطلاعاتی اخذ کند. امروزه اکثر مؤسسات و سازمان ها سعی می کنند از سیستم اطلاعاتی استفاده کنند. برای پی بردن به تفاوت دو روش ذکر شده مؤسسه ای را در نظر بگیرید که داده های مربوط به حقوق کارمندان، بیمه ، تنبیه و تشویق را در چهار فایل جداگانه قرار داده برای اخذ خروجی های مورد نیاز، سیستم های جداگانه ای برای آن ها نوشته است.

کار سیستم حقوق، محاسبه دستمزد کارکنان با استفاده از داده های موجود در فایل حقوق، کار سیستم بیمه، پردازش داده های موجود در فایل بیمه و کار سیستم های تنبیه و تشویق، پردازش داده های موجود در فایل های تنبیه و تشویق می باشد. هریک از این سیستم ها می توانند خروجی مناسبی را تولید کنند، اما اگر بخواهیم اطلاعات جدیدی مانند آنچه در زیر آمده است اخذ کنیم، با مشکل مواجه خواهیم شد.
۱٫کارمندانی که دارای حقوق مشخصی بوده به تعداد دفعات مشخصی تنبیه یا تشویق شده اند.
۲ . کارمندانی که در تاریخ معینی استخدام شده مبلغ خاصی برای آن ها از طرف بیمه هزینه شده است.
۳٫ کارمندانی که تعداد دفعات تنبیه آن ها بیشتر از تعداد دفعات تشویق باشد و برعکس.
در همه موارد بالا و مواردی مشابه مجبوریم از داده های موجود در دو یا چند فایل استفاده کنیم که کار ساده ای نیست. زیرا ممکن است داده های موجود در فایل ها دارای فرمت یکسانی نباشند. در حالی که اگر مؤسسه سیستم اطلاعاتی خود را به صورت بانک اطلاعاتی تشکیل دهد با چنین مشکلی مواجه نخواهد شد. شکل ۲-۹ نشان دهنده سیستم بانک اطلاعاتی مؤسسه سابق الذکر است.
در سیستم جدید، تمامی داده های موجود در فایل های طراحی شده در روش اول، در یک فایل بزرگ تر به نام بانک اطلاعاتی قرار می گیرند که در نتیجه پردازش داده ها و اخذ گزارش های جدید آسان تر خواهد بود.
مزایای استفاده از بانک اطلاعاتی
مزایای استفاده از سیستم بانک اطلاعاتی به جای سیستم پردازش فایل ها را می توان چنین برشمرد :
۱٫ جلوگیری از اتلاف حافظه در ذخیره کردن داده ها
۲٫ ایجاداطمینان نسبت به گزارش های به دست آمده
۳٫ اخذ گزارش های جدید ساده است.
۴٫ سرعت پردازش داده ها بالاست.
۵٫ داده ها از سیستم های کاربردی مستقل هستند.
۶٫ تمرکز در مدیریت داده ها به خوبی امکان پذیر است.
معایب استفاده از سیستم بانک اطلاعاتی
بانک اطلاعاتی با همة مزایایش، معایبی نیز دارد که این معایب در مقابل مزایای فوق ناچیزند، از جمله :
۱٫ چون طراحی بانک های اطلاعاتی ساده نیست، جهت ایجاد آن به متخصصان ما

هری نیاز است.
۲٫ به دلیل متمرکز بودن سیستم اطلاعاتی، امکان آسیب پذیری سیستم زیاد است. یعنی، اگر یک قیمت از سیستم از کار بیفتد، ممکن است در کار بقیه قسمت ها خلل ایجاد شود.
اجزای تشکیل دهنده بانک اطلاعاتی
۱٫ کاربران
۲٫ سیستم بانک های اطلاعاتی
۳٫ داده های موجود در بانک های اطلاعاتی
۱٫ مدیر یا مسئول بانک اطلاعاتی
۲٫ برنامه نویسان کاربردی یا طراحان بانک های اطلاعاتی
۳٫ کاربران نهایی
کاربران نهایی کسانی هستند که حق هیچ گونه تغییر و تبدیل را در بانک اطلاعاتی ندارند، بلکه فقط از امکانات آن می توانند استفاده نمایند. طراحان بانک های اطلاعاتی کسانی هستند که بانک اطلاعاتی را ایجاد نموده اند. مسئول بانک اطلاعاتی کسی است که حق هر گونه تبدیل و تغییر را در بانک اطلاعاتی دارد. به عنوان مثال اضافه کردن داده های جدید و حذف یا اصلاح داده ها به عهده مسئول بانک اطلاعاتی است. سیستم بانک اطلاعاتی مجموعه ای از برنامه هایی است که نیازهای کاربران را برآورده می کند.
بانک اطلاعاتی SQL
تاریخچه SQL
محبوبیت رو به رشد SQL یکی از مطالب مهم در صنعت امروزی کامپیوتر می باشد. در عرض چند سال گذشته، SQL زبان استاندارد در بانک های اطلاعاتی کامپیوتری گردیده است. اکنون بیش از ۱۰۰ محصول مدیریت بانک اطلاعاتی بر روی سیستم های کامپیوتری از کامپیوترهای شخصی گرفته تا کامپیوترهای بزرگ ، SQL را پشتیبانی می کنند. یک استاندارد رسمی بین المللی برای SQL تهیه گردیده، و SQL نقش اساسی را در استاندارد IBM’s Systems Application Architecture بازی می کند. مجلات کامپیوتری، در عنوان های خود پیدایش SQL را بعنوان یک زبان تبریک می گویند. از ابتدای کار آن در IBM ، SQL هم بعنوان یک پروژه تحقیقاتی، هم بعنوان یک تکنولوژی کامپیوتری و هم بعنوان یک نیروی غالب در بازار خود را نشان داده است.
اما SQL واقعاً چیست؟ چرا اهمیت دارد؟ اگر واقعاً SQL یک استاندارد است، پس چرا نسخه های آن انواع مختلف دارد؟ آیا SQL واقعاً در کامپیوترهای شخصی قابل اهمیت است؟ آیا می تواند پاسخگوی نیازهای سطح بالای انتقال داده ها باشد؟ با توجه به نحوه استفاده شما از کامپیوتر، SQL چه می تواند انجام دهد، و شما چگونه می توانید از این ابزار مدیریت داده ها استفاده کنید.
زبان SQL
SQL وسیله ای است برای سازماندهی، مدیریت و بازیابی داده هایی که توسط بانک اطلاعاتی در کامپیوتر ذخیره شده اند. نام SQL از عبارت Structured Query Language و نیز به شکل SQL تلفظ می شود. همانطور که از نام آن بر می آید، SQL یک زبان کامپیوتری است، که برای یک بانک اطلاعاتی از آن استفاده می شود. در حقیقت، SQL با یک نوع بانک اطلاعاتی بنام بانک اطلاعاتی رابطه ای یا relational database کار می کند.
اگر سیستم کامپیوتری مربوط به یک کار تجاری باشد، بانک اطلاعاتی داده

های مربوط به انبارداری، تولید، فروش و یا حقوق و دستمزد را نگهداری می کند. در یک کامپیوتر شخصی، بانک اطلاعاتی معمولاً داده های مربوط به چک های صادره، لیست های پرسنلی و شماره تلفن آنها، و یا داده های استخراج شده از یک سیستم کامپیوتری بزرگتر را نگهداری می کند. برنامه کامپیوتری که بانک اطلاعاتی را کنترل می کند، سیستم مدیریت بانک اطلاعاتی یا database management system و یا اختصاراً DBMS نامیده می شود.
وقتی می خواهید داده هایی را از بانک اطلاعاتی بازیابی کنید، برای اجرای کار نیاز به SQL دارید. DBMS پرسش SQL را مورد پردازش قرار داده، داده های مورد نظر را بازیابی نموده، و نتیجه را به شمار برمی گرداند. این نوع پردازش داده های درخواستی از یک بانک اطلاع

 

اتی و دریافت نتایج، یک database queruy یا پرسش از بانک اطلاعاتی است، لذا Struetured Query Language برای کاربران خود فراهم می کند، از آن جمله :
۱- بازشناسی داده یا Data definition
کاربر توسط SQL می تواند ساختار و سازمان داده های ذخیره شده را تعریف نموده و روابط بین آن داده ها را تعیین کند.
۲-بازیابی داده یا Data retreval
توسط SQL یک کاربر و یا یک برنامه کاربردی می تواند داده های ذخیره شده در یک بانک اطلاعاتی را بازیابی نموده و از آنها استفاده کند.
۳- تغییرات روی داده ها Data manipulation
یک کاربر یا یک برنامه کاربردی می تواند با استفاده از SQL با افزودن داده های جدید، حذف داده های قبلی، و اصلاح داده های ذخیره شده، یک بانک اطلاعاتی را تغییر دهد.
۴- کنترل دستیابی کاربران به داده ها یا Access control
با استفاده از SQL می توان توانایی کاربر را برای بازیابی و تغییرداده ها محدود نموده، و مانع دستیابی افراد غیرمجاز به داده های ذخیره شده گردید.
۵- استفاده اشتراکی از داده ها یا Data sharing
با استفاده از SQL می توان داده ها را بطور هم زمان برای استفاده کاربران مختلف، در اختیار آنها قرار داد، با اطمینان از اینکه کاربران با یکدیگر برخوردی نداشته باشند.
۶- حفظ امنیت و انسجام داده یا Data integrity
SQL باعث می شود که در صورت قطع برق یا تغییرات غیر مترقبه، داده های بانک اطلاعاتی آسیبی نبینند. لذا SQL زبانی است برای کنترل و تأثیر گذاری متقابل با یک سیستم مدیریت بانک اطلاعاتی.
ثانیاً ، SQL یک زبان کامل کامپیوتری مانند FORTRAN,COBOL یا C نمی باشد. زبان SQL برای کنترل شرط ها اصلاً دستور IF ندارد، و برای عمل انشعاب نیز GOTO ندارد، و برای کار گردش یا حلقه از DO یا FOR استفاده نمی کند. بلکه SQL یک زبان فرعی است برای بانک اطلاعاتی ، که برای انجام امور مدیریت بانک اطلاعاتی، دارای حدوداً ۳۰ دستور می باشد. این دستورات SQL را می توان در یک زبان دیگر مانند FORTRAN COBOL یا C قرار داد، تا آن زبان بتواند از یک بانک اطلاعاتی استفاده نماید.
و بالاخره، SQL زبانی نیست که دارای ساختار یا Stucture خاصی باشد، بخصوص در مقایسه با زبان های سطح بالایی همچون C و پاسکال . بلکه دستورات SQL شبیه

جملات انگلیسی هستند که به آن کلمات کمکی یا noise words اضافه شده اند، در حالیکه این کلمات چیزی به معنای جمله اضافه نمی کنند، و فقط باعث می شوند خواندن جملات طبیعی تر شود. چند مورد عدم هماهنگی در زبان SQL وجود دارد، و نیز چند قاعده خاص که مانع آن می شوند تا آن دسته از دستورات SQL که خیلی طبیعی به نظر رسیده ولی بی معنی می باشند، ساخته شوند.

SQL بعنوان زبان استاندارد برای بانک های اطلاعاتی رابطه ای شناخته شده است، هم دارای قدرت زیادی است و هم یادگیری آن نسبتاً آسان می باشد. در فصل دوم نگاهی سریع خواهیم داشت به این زبان و قابلیت های آن.
نقش SQL
SQL خود یک سیستم مدیریت بانک اطلاعاتی نیست، در ضمن یک محصولی هم نیست که به تنهایی قابل استفاده باشد. یعنی اینکه نمی توانید SQL را از جایی خریداری کنید. بلکه SQL جزء لاینفک یک سیستم مدیریت بانک اطلاعاتی است. یعنی زبان و ابزاری است برای ارتباط با DBMS اجزاء تشکیل دهنده یک DBMS را نشان می دهد، که SQL چگونه این اجزاء را به یکدیگر وصل می کند.
موتور بانک اطلاعاتی یا Database Engine قلب DBMS بوده و مسئولیت عملی برای سازماندهی، ذخیره سازی، و بازیابی داده ها را بر روی دیسک دارد. این موتور درخواست های SQL را از اجزاء دیگر DBMS مانند تهیه کننده گزارش، یا ابزار سازنده پرسش، از برنامه های مربوط به برنامه های کربردی که کاربر نوشته، و حتی از سیستم های کامپیوتری دیگر، دریافت می کند. SQL نقش های متعددی بازی می کند :
۱- SQL یک زبان پرسشی محاوره ای می باشد. بدین ترتیب که کاربران، دستورات SQL را در یک برنامه محاوره ای می نویسند تا داده ها را بازیابی نموده و آنها را روی صفحه نمایش، نشان داده و در واقع SQL ابزار ساده ای برای اجرای پرسش های بانک اطلاعاتی می باشد.
۲- SQL یک زبان برنامه نویسی بانک اطلاعاتی است. برنامه نویسان با قرار دادن دستورات SQL در برنامه های کاربردی می توانند به داده های یک بانک اطلاعاتی دسترسی داشته باشند. از این تکنیک هم در برنامه هایی که کاربران می نویسند، و هم در برنامه های مربوط به بانک اطلاعاتی (مانند برنامه هایی که گزارش می نویسد و یا برنامه های ورود اطلاعات) برای دستیابی به بانک اطلاعاتی می توان استفاده نمود.
۳- SQL یک زبان مدیریت بانک اطلاعاتی است. برای مدیریت بانک اطلاعاتی مبنی کامپیوتر یا بانک اطلاعاتی کامپیوتر بزرگ، از SQL استفاده می شود تا ساختار بانک اطلاعاتی و کنترل داده های ذخیره شده تعیین شود.
۴- SQL یک زبان Client/server یا سرویس دهنده / درخواست کننده می باشد. در برنامه های کامپیوترهای شخصی از SQL استفاده می شود تا در یک شبکة محلی با Server ها یا سرویس دهنده های بانک اطلاعاتی که داده های مشترک را ذخیره می کنند، ارتباط برقرار شود. بسیاری از برنامه های جدید کاربردی از این ویژگی استفاده می کنند تا ترافیک شبکه را کاهش داده و باعث شوند که PC ها و Server ها وظایف خود را بخوبی انجام دهند.

۵- SQL یک زبان بانک اطلاعاتی شبکه ای می باشد. سیستم های مدیریت بانک اطلاعاتی شبکه ای برای کمک به امر توزیع داده ها در سیستم های کامپیوتری متعدد از SQL استفاده می کنند. نرم افزار DBMS موجود در سیستم ها برای ارتباط با سیستم های دیگر و جهت دستیابی به داده ها از SQL استفاده می کنند.
۶- SQL یک زبان برای هماهنگی بین محصولات مختلف :
در یک شبکه کامپیوتری از محصولات مختلف DBMS استفاده می کنند، غالباً از S

QL در یک gateway استفاده می شود تا یک نوع DBMS بتواند با نوع دیگر ارتباط برقرار نماید.
SQL به این ترتیب بعنوان یک ابزار قوی و مفید برای مرتبط نمودن افراد، برنامه های کامپیوتری و سیستم های کامپیوتری به داده های ذخیره شده در یک بانک اطلاعاتی رابطه ای شناخته شده است.
قابلیت و مزایای SQL
SQL زبانی است که هم فهم آن آسان است و هم وسیله ای برای مدیریت داده ها ذیلاً برخی قابلیت های اصلی و نیز شرایط بازار که سبب موفقیت SQL گردیده است شرح داده می شود :
– استقلال فروشنده
– قابلیت استفاده از انواع سیستم های کامپیوتری
– استانداردهای SQL
– تأیید IBM
– پایه و اساس رابطه ای SQL
– ساختار سطح بالا و شبیه زبان انگلیسی بودن
– درخواست های محاوره ای و موردی
– دسترسی به بانک اطلاعات از طریق برنامه نویسی
– داشتن چند دید مختلف از داده ها
– زبان کامل بانک اطلاعاتی
– تعریف داده ها در هر زمان
– ساختار Client / server (یا سرویس دهنده / درخواست کننده)
موارد فوق باعث شده که SQL بعنوان ابزاری استاندارد برای مدیریت داده ها در کامپیوترهای شخصی، مینی کامپیوترها، و کامپیوترهای بزرگ شناخته شود. ذیلاً می پردازیم به شرح هریک از عوامل فوق.
استقلال فروشنده
SQL بوسیله تمام فروشندگان مهم IBM عرضه شده است، و هیچ محصول جدید بانک اطلاعاتی بدون پشتیبانی SQL موفق نخواهد بود. در یک بانک اطلاعاتی که بر پایه SQL باشد و نیز برنامه هایی که از آن استفاده می کنند، با حداقل تغییر و حداقل معطلی، افراد می توانند برنامه های خود را از یک DBMS به DBMS فروشنده دیگر منتقل کنند. از جمله ابزارهای بانک اطلاعاتی که بر اساس SQL می باشند، و با انواع مختلف DBMS کار می کنند، می توان برنامه های تولید گزارش و مولد برنامه کاربردی را نام برد. استقلال فروشنده و عدم وابستگی او به یک تولید خاص، از دلایل مهم محبوبیت SQL می باشد.
قابلیت استفاده از انواع سیستم های کامپیوتری
فروشندگان DBMS هایی که بر اساس SQL می باشند، تولید خود را بر روی انواع سیستم های کامپیوتری از کامپیوترهای شخصی و ایستگاههای کاری گرفته تا شبکه های محلی، مینی کامپیوترها، و کامپیوترهای بزرگ, عرضه می کنند. برنامه های کاربردی که بر اسا

س SQL می باشند و با سیستم های تک کاربره شروع می شوند، بار رشد خود قابل انتقال به مینی کامپیوترها و سیستم های کامپیوتری بزرگ می باشند. در ضمن داده هایی که در بانک های اطلاعاتی شبکه ای قرار دارند و بر اساس SQL می باشند، قابل انتقال به بانک های اطلاعاتی کامپیوترهای شخصی هستند. و بالاخره، از کامپیوترهای شخصی بطور مؤثرتری می توان استفاده نموده و قبل از انتقال یک برنامه کاربردی بانک اطلاعاتی SQL به یک سیستم گسترده چند کاربره، یک نسخه از آن را تهیه نمود.
استانداردهای SQL
توسط انستیتوی استانداردهای ملی آمریکا یا AmericISO ) یک استاندارد رسمی برای SQL اعلام شده است. SQL بعنوان یک استاندارد پردازش اطلاعات در آمریکا شناخته شده و باعث گردیده تا بعنوان یک ابزار ضروری برای قراردادهای کامپیوتری بزرگ دولتی شناخته شود. در اروپا، X/OPEN که استانداردی است برای محیط برنامه های کاربردی که بر اساس UNIX می باشند، SQL را بعنوان استاندارد خود برای استفاده از بانک اطلاعاتی پذیرفته است. گروه OSF یا Open Software Foundation که شرکت فروشنده UNIX می باشد، تصمیم گرفته است که SQL را بعنوان اساس استاندارد برای استفاده از بانک اطلاعاتی قرار دهد. این استانداردها بعنوان یک مهر رسمی برای SQL خدمت نموده، و بازار آنرا گرمتر نموده اند.

تأیید IBM
SQL ابتدا بوسیله پویندگان شرکت IBM ساخته شد، و از آن زمان تاکنون بعنوان یک محصول استراتژیکی IBM شناخته شده است. SQL یک جزء اساسی از Systems Application Architecture یا SAA می باشد، که رونوشت یا کپی شرکت IBM است برای ایجاد هماهنگی در خطوط مختلف تولید آن هر چهار خانواده ای که در زیر چتر SAA قرار دارند، SQL را حمایت می کنند، این چهار خانواده عبارت اند از کامپیوترهای شخصی PS/2 ، سیستم های AS/400 ، و کامپیوترهای بزرگی که سیستم های عامل MVS و VM را اجرا می کنند. این پشتیبانی گسترده IBM باعث تسریع بازار SQL شده و سبب گردیده که دیگران نیز از آن تبعیت کنند.
پایه و اساس رابطه ای SQL
SQL زبانی است برای بانک های اطلاعاتی رابطه ای، و بعنوان یک مدل بانک اطلاعاتی رابطه ای مشهور شده است. ساختار جدولی یا سطر و ستونی یک بانک اطلاعاتی رابطه

ای برای کاربران قابل درک بوده، و باعث می شود که زبان SQL ساده و قابل درک باشد. در ضمن مدل رابطه ای یک اساس قوی تئوریک دارد که باعث تکامل تدریجی بانک های اطلاعاتی رابطه ای شده است.
زبان کامل بانک اطلاعاتی
SQL ابتدا بعنوان یک زبان پرسشی موردی ساخته شد، اما قابلیت های فعلی آن فراتر از کار بازیابی داده ها است. SQL یک زبان کامل برای ایجاد بانک اطلاعاتی، مدیریت صحیح آن، تغییر محتوای آن، و در شبکه قرار دادن داده ها در بین کاربران مختلف است. مفاهیم SQL که یک قسمت از این زبان را شامل می شود، قابل تعمیم به دیگر دستورات آن نیز می ب

اشد.
تعریف داده ها در هر زمان
با استفاده از SQL می توان هر زمان ساختار یک بانک اطلاعاتی را تغییر و یا توسعه داد، حتی در زمانی که کاربران در حال استفاده از محتوای آن می باشند. این یک قابلیت مهم نسبت به زبان هایی است که تعریف داده ها در آنها حالت سکون و غیرپویا دارد. به این ترتیب SQL دارای حداکثر قابلیت انعطاف بوده، و در حالیکه برنامه های کاربردی بطور Om-limc کار می کنند، می توان بانک اطلاعاتی را تغییر داد.
از طرز کار آنها، SQL را آموزش می دهد. اگر چه همواره نحوة نگارش هر دستور را نمایش خواهیم داد لکن بیشتر بر مسائلی که توسط هر دستور حل شوند و نیز به نحوة به کارگیری این دستورات برای حل هر مسئله تأکید خواهیم کرد و برای روشنتر شدن موضوع از مثالهای واقعی با توضیحات کامل، استفاده خواهیم کرد. امروز موضوعات زیر را می آموزید:
• تاریخچة SQL Server
• نحوة استفاده از SQL در کاربردهای واقعی
• نحوة اتصال به پایگاه داده ها از طریق ابزار جدید Query Analyzer (تحلیل گرپرسش)
• نحوة نوشتن و اجرا کردن اولین پرسش SQL
مقدمه ای بر دلفی
مدتی است که دلفی به عنوان یک زبان قدرتمند، طرفداران زیادی پیدا کرده است و از الگوهای زبان پاسکال شیء گرا پیروی می کند. زبان دلفی در محیط ویندوز به کار گرفته می شود. می گویند دلفی قابلیت RAD دارد. RAD به معنی تولید سریع برنامه است. علتش این است که بخش بسیار زیادی از کد برنامه توسط دلفی ایجاد می شود. محیط دلفی را IDE به معنی محیط توسعه مجتمع می نامید، زیرا در این محیط ویراستار، کامپایلر، پیوند دهنده همگی با هم و در کنار هم کار می کنند.
مزایای دلفی
انعطاف پذیری دلفی بسیار زیاد است و کاربران به آسانی با دلفی ارتباط برقرار می کنند. می دانید که برنامه نویسان معمولاً کاربران کامپیوتر نیستند. یعنی برنامه نویسان، پس از تکمیل برنامه، آن را در اختیار افراد دیگری به نام کاربران قرار می دهند تا از آن ها استفاده کنند. به عبارت دیگر، یک فایل اجرایی (exe) در اختیار کاربران قرار می گیرد. در نتیجه می توان یک برنامه نصب ساده ای نوشت تا عمل نصب برنامه را انجام دهد. قابلیت اجرای برنامه ها، ایجاد قطعات

و به کارگیری قطعات در برنامه ها بسیار آسان است.
انواع داده در دلفی
یکی از جنبه های مهم هر زبان برنامه سازی که باید مورد بررسی قرار گیرد، انواع داده های آن است. ما روزمره با داده هایی مثل میزان خرید روزانه و اسامی افراد سروکار

داریم. خرید روزانه را به صورت اعدادی مثل ۱۵۰۰، ۵/۴۱۳ و اسامی افراد را با کلماتی مثل علی، احمد و رضا بیان می کنیم . انواع داده ها در دلفی عبارت اند از :
• داده های نوع صحیح ۱۰، ۲۰و ۱۲۵ • داده های بولی (boolean)
• داده های نوع حقیقی مثل ۵/۱۴ . ۲۵/۵ • داده های کاراکتری مثل A B و C
• داده های نوع ارزی (Currency) • داده های رشته ای مثل Science , Ali
روش طراحی برنامه شیء گرا
برای طراحی و ایجاد برنامه شیء گرا باید مراحلی را انجام داد. این مراحل را در این جا مورد بحث قرار می دهیم.
۱٫ تعیین نیازمندی های مسئله
۲٫ تحلیل مسئله
۳٫ طراحی کلاس هایی که باید مسئله را حل کنند، این کار با انجام موارد زیر امکان پذیر است:
الف . پیدا کردن کلاس موجود و اصلاح شده
ب.اصلاح کلاس های موجود، در صورت نیاز
ج. طراحی کلاس های جدید، در صورت لزوم
۴٫ پیاده سازی کلاس های جدید
۵٫ تست و بررسی کل برنامه
۶٫ نگهداری و بازسازی برنامه
آنچه که برای نصب دلفی نیاز است
برای نصب دلفی به نرم افزار و سخت افزار خاصی نیاز دارید که عبارت اند از :
۱٫ ویندوز ۹۵، ۹۸ ، ۲۰۰۰ یا xp
2. کامپیوتر ۴۸۶ یا ترجیحاً پنتیوم با حداقل ۳۲ مگابایت به همراه CD-ROM
3. دیسک سخت که حداقل ۴۰ مگابایت فضای خالی داشته باشد.
۴٫ دستگاه ماوس برای سرعت انجام کار با دلفی

نصب و راه اندازی دلفی
برنامه دلفی بر روی CD ذخیره شده است. برای نصب آن ، CD مربوط را در درایو قرار داده برنامه Setup را اجرا کنید. پس از نصب ، برنامه دلفی در منوی Programs از ویندو

ز ظاهر می شود. گزینه Porgrams را انتخاب کنید تا لیست برنامه های نصب شده ظاهر شوند. بر روی برنامه دلفی کلیک کنید. پنجرة اولیه دلفی باز می شود که شامل :
• اولین سطر آن مربوط به نام پروژه است.
• منوی اصلی (Main Menu) . حاوی منوهای File ، Edit و … است که هرکدا

م کار خاصی را انجام می دهند.
• نوار قطعات . در این نوار، ۱۴ عمل متداول وجود دارد که به جای مراجعه به منوهای مختلف، می توان از آن ها استفاده کرد. سرعت دسترسی به این اعمال بسیار زیاد است.
• پنجره فرم . فرمی را نمایش می دهد که برای طراحی برنامه مورد استفاده قرار می گیرد.
• پنجره کد. این پنجره برای تایپ برنامه مورد استفاده قرار می گیرد.
• بازرس شیء (Object Inspector ). این ابزار، واسطی را در اختیار شما قرار می دهد تا با استفاده از آن بتوانید خواص اجزای دلفی را تغییر دهید و رویدادهایی را که اشیا به آن ها عکس العمل نشان می دهد، کنترل کنید. این نوار، دو گزینه به نام های Properties (خواص) و Events (رویداد) دارد. گزینه Properties امکان مشاهده و تغییر خواص اشیاء را فراهم می کند. به عنوان تمرین، فرم صفحه نمایش را کلیک کنید تا خواص آن در این قسمت ظاهر شوند. اگر در جلوی خواصی علامت + وجود داشت، معنایش این است که این خواص حاوی خواص دیگری نیز هست. اگر دوباره بر روی آن کلیک کنید، خواص دیگر آن ظاهر شده قابل تغییر است. گزینه Events تمام رویدادهایی را که شیء انتخاب شده می تواند به آن ها پاسخ دهد نشان می دهد. به عنوان مثال، اگر برنامه می بایست در هنگام بسته شدن پنجره عمل خاصی را انجام دهد، می توانید برای انجام این کار از رویدادی به نام On Close استفاده کنید.
اجزای سازنده برنامه دلفی
همان طور که گفته شد، یک زبان شیء گرا است. به همین دلیل بسیاری از اجزای برنامه، از قبل نوشته شده، تحت عنوان کلاس های مختلفی ارائه شده اند. برنامه دلفی از مجموعه ای از کلاس ها (اشیا) ، زیر برنامه ها و توابع تشکیل می شود. نمونه ای از یک نوع ساده را متغیر و نمونه ا

ی از یک کلاس را شیء می نامند. اشیاء دارای دو دسته از عناصر هستند: عماصر داده ای و عناصر رویه ای. عناصر رویه ای اشیا را متد (Method ) نیز می نامند. اعضای داده ای برای ذخیره صفات اشیا و متدها برای پیاده سازی رفتار اشیا مورد استفاده قرار می گیرند. دقت داشته باشید که کلاس ها، اشیا و زیربرنامه های از قبل نوشته شده ، باید یونیت مربوط به آن را به برنامه خود پیوند دهیم (ضمیمه کنیم) . برای ضمیمه کردن یونیت ها به برنامه، از دستور uses استفاده می شود. به عنوان مثال، اگر یونیتی به نام Unit1 داشته باشیم، به صورت زیر به برنامه الحاق م

ی شود :
Uses unit1;
برای دسترسی به اجزای اشیا از نقطه استفاده می کنیم. به عنوان مثال، اگر شیئی به نام Tedit داشته باشیم و این شیء یک عضو داده ای به نام data داشته باشد، دستور زر به این عضو مقدار می دهد :
Tadit . Data : = 15;

برای اجرای رویه ای که عضو اشیا است، به همین ترتیب عمل می شود. به عنوان مثال، اگر شیء Tedit زیر برنامه ای به نام Change داشته باشد که دارای دو پارامتر باشد، این رویه به صورت زیر اجرا می شود (a و b پارامترهای زیر برنامه اند).
Tedit: Chang (a,b);
چگونه با دلفی برنامه می نویسیم
اولین قدم در نوشتن برنامه دلفی، طراحی چیزی است که کاربر با آن سر و کار دارد. به عبارت دیگر ، اولین قدم ، طراحی صفحه نمایش است. اندازه پنجره ای که برنامه از آن استفاده می کند، چقدر باشد، به چند پنجره نیاز هست؟ چه قطعاتی باید مورد استفاده قرار گیرند؟ چه دکمه هایی باید در پنجره ها گنجانده شوند؟ و غیره اشیایی که بر روی پنجره ها قرار می گیرند، همان قطعاتی هستند که در دلفی ارائه می شوند.
طراحی واسط برنامه با کاربر، در دلفی بسیار ساده است. قطعاتی که در پنجره قرار می گیرند، به طور خودکار، تمام رفتارهای کاربر، از قبیل حرکت ماوس و کلیک کردن دکمه ها را تشخیص می دهند. توانایی طراحی منو در دلفی بسیار زیاد است و منوهای مختلفی را می توان ایجاد کرد.
پس از این که واسط کاربر را تعریف کردید (دکمه ها و سایر قطعات را مشخص نمودید) ، کارهای بعدی به سبک برنامه نویسی قدیمی شباهت پیدا می کند. قطعات دلفی، رویدادهایی مثل کلیک کردن ماوس را تشخیص می دهند، ولی چگونگی پاسخگویی به آن ها بسته به کدی دارد که برنامه نویس آن ها را می نویسد. تقریباً می توان گفت که برای پاسخگویی به رویدادها باید کدهایی را بنویسید.

در برنامه نویسی قدیمی، برنامه ها از بالا به پایین اجرا می شوند. یعنی اجرای برنامه از اولین خط اجرا شده در طی اجرای برنامه در صورت لزوم، بخش های بعدی اجرا می شوند. برنامه دلفی، به شکل کاملاً متفاوتی عمل می کند. هسته اصلی برنامه دلفی، مجموعه ای از کدهای مستقل از هم است که فقط توسط رویدادهایی که برایشان مشخص شده است فعال می گردند و به آن ها پاسخ می دهند. بدین ترتیب، کنترل روند برنامه، به دست کاربر است. وقتی برنامه شما به

رویدادی باید پاسخ دهد، زیر برنامه ای به نام روال پاسخگویی به رویداد ایجاد می شود. الگوی این روال نوشته می شود و به روشی که بعداً گفته خواهد شد، باید دستورات لازم را برای پاسخگویی به آن رویداد بنویسید. دستوراتی که باید به رویداد پاسخ دهند، در بین دو دستور begin و end قرار می گیرند. نمونه ای از روال پاسخگویی به رویداد به صورت زیر است (فعلاً به جزئیات کاری نداشته باشید) :

Procedure TFORMl . Forcmcreate (Sender : Tobject);
Begin
End. انتهای روال رویداد
End. انتهای برنامه
مراحل طراحی برنامه دلفی را می توان به صورت زیر بیان کرد :
۱٫ طراحی و سفارشی کردن پنجره هایی که کاربر با آن ها سروکار دارد.
۲٫ تعیین قطعاتی که باید در پنجره منظور شوند و قطعات باید چه رویدادهایی را پاسخ دهند.
۳٫ نوشتن روال رویداد (مربوط به هرکدام از رویدادها).
وقتی برنامه دلفی اجرا می شود، کارهای زیر انجام می شود:
۱٫ دلفی همواره پنجره ها و عناصر موجود در هرکدام از آن ها را برای تمام رویدادهایی که برنامه می تواند شناسایی کند (مثل حرکت ماوس، کلیک کردن ماوس، فشردن دکمه ها و …) بازبینی می کند.
۲٫ وقتی دلفی رویدادی را مشاهده کرد، اگر پاسخی درونی (Built – in ) برای آن نداشته باشد، جست و جو می کند که آیا روالی برای پاسخگویی نوشتید یا خحیر.
۳٫ اگر روال پاسخگویی به رویداد را نوشته باشید، آن را اجرا می کند و به مرحله ۱ می رود و منتظر رویداد بعدی می ماند.
۴٫ اگر روال پاسخگویی به رویداد را ننوشته باشید، به مرحله ۱ می رود و منتظر رویداد بعدی می ماند.
این مراحل آنقدر ادامه می یابند تا برنامه خاتمه یابد. بنابراین، قبل از این که دلفی کاری انجام دهد، باید رویدادی رخ داده باشد. لذا برنامه های رویدادی بیش از آن که فعال باشند، در

حالت انتظار به سر می برند.
انواع فایل ها در دلفی
در دلفی چندین نوع فایل وجود دارد که هنگام طراحی برنامه دلفی ایجاد می شوند:
۱٫ فایل پروژه (dpr) . برای نگهداری اطلاعات دربارة فرم ها و واحدها مورد استفاده قرار می گیرد.
۲٫ فایل فرم (dfm) . این فایل عملاً فایل باینری منبع (.res) است. این فایل حاوی توضیحی از فرم و اجزای آن است.
۳٫ فایل منبع یونیت دلفی (.Psk) . از این فایل برای ذخیره سازی دستورات استفاده می شود. هر یونیت عملاً یک فایل با این پسوند دارد.

۴٫ فایل میزکار پروژه (.dsk). این فایل سابقه اجرای پروژه را هنگام باز یا بسته شدن نگه می دارد.
۵٫ فایل گزینه های پروژه (.dof) . این فایل گزینه های مختلفی را که در صفحه گفتگو گزینه های پروژه (Project Option ) انتخاب شده است، نگهداری می کند.
۶٫ فایل اطلاعات بسته های نرم افزاری (drf). یک فایل باینری است که دلفی با بسته های نرم افزاری مورد استفاده قرار می دهد.
۷٫ فایل منبع (res). فایل باینری کامپایل شدة منابع است و دلفی دائماَ در حال به روز رسانی با ایجاد مجدد این فایل خواهد بود.
۸٫ فایل های پشتیبانی (~pa,.~df,.~idp) . به ترتیب فایل های پشتیبان پروژه، فرم و یونیت هستند.
۹٫ فایل اجرایی نهایی (.exe) . یک فایل اجرایی مستقل می باشد.
۱۰٫ فایل کامپایل شده شیء باینری (dcu) . این فایل نسخه کامپایل شده فایل های واحد (.pas) است و یا فایل اجرایی پایانی مرتبط است.
اجرای دستورات SQL در دلفی
برای اجرای دستورات SQL در دلفی باید مراحل زیر را انجام دهید:
۱٫ اضافه کردن عنصر Query به پروژه
۲٫ اضافه کردن عنصر Data Source به پروژ]
۳٫ پاک کردن محتویات خاصیت SQL عنصر Query :

Query1 . SQL . Clear;