صفحه 1 از 2 12 آخرینآخرین
نمایش نتایج: از شماره 1 تا 16 , از مجموع 31

موضوع: آموزش دلفی

  1. #1
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    آموزش دلفی

    آموزش دلفی
    تاریخچه زبان دلفی
    دلفی در واقع یک کامپایلر پاسکال است. دلفی 6 نسل جدید کامپایلر هایپاسکال است که شرکت Borland از زمان ایجاد اولین نسخه پاسکال توسط AndresHejlsberg در 15 سال پیش به بازار عرضه کرد.

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

    در اینجا به بررسی تفصیلی روند حرکتی دلفی در هر یک از نسخه های آن می پردازیم و مشخصات مهم آن را بررسی می کنیم

  2. #2
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    سال 1995 - Delphi1
    در زمان استفاده از سیستم عامل DOS برنامه نویسان مجبور بودند از بین زبانپر قدرت ولی کم سرعت Basic و زبان کارآمد ولی پیچیده و نامفهوم Assemblyینیققا انتخاب کنند. پاسکال با ارائه یک زبان ساخت یافته و یک کامپایلرسریع و کم نقص این شکاف را پرکرد. برنامه نویسان Windows 3.1 هم با تصمیمگیری مشابهی رو برو شدند. یکی زبان قدرتمند و سنگین ++C و یکی زبان ساده ومحدود کننده Visual Basic .

    ارائه Delphi1 در این مورد هم راه حل خوبی برای برنامه نویسان بود. دلفیمجموعه متفاوتی برای برنامه نویسی بود . طراحی و توسعه برنامه هایکاربردی، ایجاد DLL ها، پایگاههای داده و ... که یک محیط ویژوال وسیع راتشکیل می داد. Delphi1 اولین ابزار برنامه نویسی ویندوز بود که محیط طراحیویژوال، کامپایلر بهینه کد برنامه و دسترسی قوی به پایگاههای داده را دریک جا جمع کرد که آن را به یکی از بهترین ابزارهای روش نوین توسعه سریعنرم افزار (Rapid Application Development) تبدیل کرد. این مجموعه قدرتمندباعث شد که در همان زمان بسیاری از برنامه نویسان زبانهای دیگر به Delphiروی بیاورند و این موفقیت بزرگی برای Borland به حساب می آمد. همچنینبسیاری از برنامه نویسان پاسکال دلفی را ابزاری یافتند که توسط آن هم ازتوانایی و تجربه خود در برنامه نویسی پاسکال استفاده می کردند و همتوانایی کار در ویندوز را به دست آوردند. همچنین زبانی که در آن زمان بانام پاسکال شیئی (ObjectPascal) در دانشگاهها ایجاد شده بود یک زبان بسیارخشک و محدود کننده بود که اصلاٌ حالت کاربردی پیدا نکرد.

    ویژگیهای دلفی مثل طراحی ظاهری حساب شده و کاربر پسند آن باعث شد که زبانپاسکال شیئی عملاٌ از رده خارج شود. تیم طراحی VB در Microsoft قبل ازحضور دلفی هیچ رقیب مهمی برای خود نمی دید. VisualBasic در آن زمان زبانینا کارآ ، کم سرعت و کند ذهن بود. Visual Basic 3 در عمل اصلا تواناییرقابت با Delphi 1 را نداشت. در این سال شرکت Borland گرفتار یک سریمشکلات قضائی با شرکت Lotus بود که در نهایت هم متخلف شناخته شد. همچنیندرگیری مشابهی هم با Microsoft بر سر تلاش در تغییر دادن فضای نرم افزارهای Microsoft پیدا کرد. همچنین Borland مشغول طراحی و فروش طرح Quatro بهشرکت Novell و طراحی پایگاه های داده dBase و Paradox بود که با استقبالقابل توجهی مواجه نشد.

    در این زمان که Borland مشغول فعالیتهای قضایی و تجاری بود Microsftتوانست گوی سبقت را از Borland برباید و قسمت اعظم بازار ابزار های برنامهنویسی تحت Windows را در اختیار بگیرد و سعی می کرد تا این طرز فکر رااشاعه دهد که چون Windows را طراحی کرده صلاحیت و توانایی تهیه بهترینابزار های برنامه نویسی تحت آن را نیز در دست دارد. در این شرایط Borlandبا عرضه Delphi و نسخه جدید ++Borland C سعی کرد خدشه ای در فرمانرواییMicrosoft وارد کند و سهمی در بازار بزرگ این محصولات داشته باشد

  3. #3
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    سال 1996 - Delphi2
    یک سال بعد Delphi2 تمام مزایای نسخه قبلی را تحت سیستم های جدید 32 بیتی(Windows 95,Windows NT) ارائه داد. همچنین Delphi2 با ارائه خصوصیاتاضافه و کارکرد های قویتری نسبت به Delphi1 توانایی های خود را افزایشداد. (ازجمله ارائه کامپایلر 32 بیتی که سرعت بالایی به نرم افزار ها میبخشید، کتابخانه بزرگ و کاملی از اشیای مختلف، شیوه جدید و تکامل یافته ایبرای اتصال به پایگاه های داده مختلف، ادیتور پیشرفته، پشتیبانی از OLE ،توانایی وراثت در فرمهای ویژوال و سازگاری با پروژه های 16 بیتی Delphi1). Delphi2 به معیاری برای سنجش و مقایسه همه ابزارهای توسعه نرم افزار درآن زمان تبدیل شد.

    در آن زمان با ارائه سیستم 32 بیتی Windows95جهش بزرگی در سیستم عاملWindows رخ داد و Borland بسیار مشتاق بود که Delphi را به بهترین ابزاربرنامه نویسی سیستم جدید تبدیل کند. نکته این که در آن زمان به منظورتاثیر در افکار عمومی و تاکید بر قدرت Delphi در سیستم عامل 32 بیتی قراربود که نرم افزار با نام جدید Delphi32 به بازار عرضه شود ولی در آخرینمراحل به خاطر اینکه نشان دهند این زبان زبانی رشد یافته و تکامل یافتهنسخه قبلی یعنی Delphi1 است نام Delphi2 را برای آن انتخاب کردند.

    Microsoft تلاش کرد که با Visual Basic 4 با Delphi مقابله کند ولی ازابتدا کیفیت پایین آن و ضعف آن در انتقال برنامه های 16 بیتی به سیستم 32بیتی و بروز اشکالات ساختاری در طراحی آن موجب شکست زودهنگام Visual Basic4 شد. در این زمان هنوز تعداد زیادی از برنامه نویسان به Visual Basicوفادار بودند. Borland هنچنین روشها و ابزارهای قدرتمندی همچونPowerBuilder برای طراحی نرم افزار های Client/Server ارائه داد ولیDelphi هنوز آن قدر قدرتمند نشده بود که بتواند نرم افزارهایی که جایی دربین توسعه گران پیدا کرده اند را براندازد

  4. #4
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    سال 1997 - Delphi3
    از زمان تهیه و توسعه Delphi1 تیم توسعه Delphi در فکر گسترش و ایجاد یکزبان قدرتمند جهانی بود. برای Delphi2 این تیم تمام نیروی خود را صرفاعمال مربوط به انتقال تواناییها و کارکرد ها به سیستم 32 بیتی و همچنیناضافه کردن خصوصیات Client/Server و پایگاه داده کرد. در زمان تهیهDelphi3 تیم توسعه فرصت لازم برای گسترش مجموعه ابزار موجود را یافت و دراین راستا کیفیت و کمیت ابزارهای Delphi بهبود یافت. به علاوه راه حل هاییبرای مشکلات عمده و قدیمی برنامه نویسان تحت ویندوز ارائه شد. به ویژهاستفاده از برخی فناوری های پیچیده و نا مفهوم (مثل COM و ActiveX وتوسعهنرم افزار های تحت Web وکنترل پایگاههای داده چند کاربره). روش نمایش کدبرنامه همچنین توانایی کامل کردن خودکار کد (Code Completion) عملیات کدنویسی را راحت تر کرد. ضمن این که همچنان در بیشتر موارد اساس و متدولوژیبرنامه نویسی مانند Delphi1 بود و بر پایبندی به قوانین اصولی Pascalتاکید می شد.

    در این زمان رقابت شرکت های تولید کننده ابزار های برنامه نویسی بسیارتنگاتنگ شده بود. Microsoft با ارائه Visual Basic 5 به پیشرفت های خوبیدست یافت ازجمله پشتیبانی قوی از COM و ActiveX و ایجاد برخی خصوصیات وتغییرات کلیدی و اساسی در کامپایلر VB. ضمن این در همین سال Borland باپشتوانه قوی Delphi و با استفاده از ساختار موفق آن ابزارهای دیگری همچونForte و BC++ Builder به بازار عرضه کرد.

    تیم Delphi در زمان طراحی Delphi3 چند تن از اعضای کلیدی خود را از دستداد. Andres Hejlsberg معمار اصلی Delphi در اقدام غیر منتظره ای Borlandرا ترک کرد و تصمیم گرفت به رقیب دیرینه یعنی Microsoft بپیوندد. اما حرکتتیم Delphi متوقف نشد و معاون Hejlsberg که سالها تجربه همکاری با او راداشت توانست رهبری این تیم را به خوبی در دست بگیرد. همچنین مسئول فنی تیم(Paul Gross) هم در اقدام مشابهی به گروه Microsoft ملحق شد. این تغییراتبیشتر به خاطر اختلافات شخصی بین افراد تیم بود و نه به خاطر مسائل حرفهای.

  5. #5
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    سال 1998 - Delphi4
    Delphi4 بیشتر بر روی راحتتر کردن کار با دلفی متمرکز شد. مرورگر روال ها(Module Explorer) بهبود یافت و مرور و ویرایش Unit ها را راحت تر کرد.کنترل کد و کامل کردن خودکار کلاسها این فرصت را به کاربر داد که فکر وزمان خود را روی ساختار اصلی برنامه بگذارد و در وقت صرفه جویی کند. طراحیرابط کاربر هم کاملاٌ عوض شد و بهبود یافت و اشکال زدا (Debugger) نیزپیشرفت قابل توجهی داشت. Delphi4 قابلیتهای برنامه نویسان را در استفادهاز تکنولوژیهای چند منظوره خارجی مثل MIDAS ، DCOM ، MIS و Corba افزایشداد.

    در این سال Delphi جایگاه خود را در رقابت با دیگران مستحکم کرده بود و کمکم به سمت دست یابی به سودآوری مالی مورد نظر خود پیش می رفت. در واقع دراین زمان بود که حاصل کار سنگین چند ساله تیم نمایان می شد. بعد از سالهاآزمایش Delphi شهرت و محبوبیت خاصی پیدا کرد و دیگر برنامه نویسان Delphiتوانایی جدا شدن از آن را نداشتند. در این زمان Borland به کار سوٌالبرانگیزی دست زد و به منظور تبلیغ بیشتر و برتری در جنگ روانی با دیگرشرکتها نام Inprise را برای فعالیتهای تجاری خود برگزید.

    ابزار های مربوط به فن آوری Corba را گسترش داد تا راه جدیدی برای سودآوریایجاد کند. برای موفقیت در این زمینه Corba نیاز به رابط کاربر قدرتمندیداشت که در کنار توانایی های آن کار کردن با آن نیز راحت باشد. دقیقاٌهمان کاری که در سالهای قبل در مورد COM و برنامه نویسی تحت Web انجام شدهبود و به موفقیت دست یافته بود. با این وجود بنا به دلایل مختلفی اینگسترش و توسعه Corba هیچ وقت تکامل و موفقیتی که مورد نظر بود را به دستنیاورد و بر خلاف تبلیغات و سرمایه گذاری های انجام شده فن آوری Corbaتنها توانست نقش کوچکی در روند رو به جلوی Delphi ایفا کند.

  6. #6
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    سال 1999 - Delphi5
    Delphi5 در برخی زمینه ها پیشرفت های قبلی را ادامه داده است. اولاٌ مسیریرا که Delphi4 با اضافه کردن ویژگیهای زیادی شروع کرده بود ادامه داد.Delphi4 باعث شد کارهایی که قبلاٌ به صرف وقت زیادی احتیاج داشت بسیارسریعتر انجام شود. Delphi به شکل امیدوار کننده ای به برنامه نویس اینامکان را می دهد که بیشتر به برنامه ای که میخواهد بنویسد توجه کند و نهبه قواعد برنامه نویسی و نوشتن کد های تکراری و خسته کننده. این ویژگیهایسودمند شامل رابط کاربر بهبودیافته و سیستم اشکال زدایی(Debugger) توانمند، امکانات برنامه نویسی تیمی و ابزار های ترجمه می شود.

    ثانیا Delphi5 خصوصیات جدیدی را در بر می گیرد که توسعه برنامه های تحت وبرا واقعاٌ راحت کرده است. این ویژگیها شامل طراح اشیای مربوط به ASP برایساختن صفحات (Active Server Page)، اشیایی موسوم به Internet Express برایپشتیبانی از XML و خصوصیات جدید MIDAS که آن را به یک ابزار همه کاره درپایگاه های داده تحت Web تبدیل کرد. در نهایت با صرف وقت ، هزینه و صبرزیاد توانست Delphi5 قدرتمند را عرضه کند. این فعالیت مدتها به طولانجامید و قبل از عرضه عمومی، Delphi5 بارها در بازبینی ها و آزمایشهایداخلی قسمتهای مختلف آن تغییر کرد و بهبود یافت.

    Delphi5 در نیمه دوم سال 1999 به بازار عرضه شد و به نفوذ و تسلط بر بازارادامه داد. در این زمان Visual Basic که کم کم به عضوی تحقیر آمیز برایMicrosoft تبدیل می شد هم با پیشرفتهایی توانست در رقابت دوام بیاورد و ازصحنه خارج نشود. در اقدام درست و به جایی نام Inprise دوباره به Borlandبازگشت. این اقدام از سوی طرفداران و مشتریان قدیمی Borland با استقبالخوبی مواجه شد.

  7. #7
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    فصل 1
    دلفی چیست ؟

    فهرست مطالب این فصل
    - تاریخچه دلفی
    - IDE و SDK و Platform
    - نسخه های دلفی
    - دلفی در لینوکس
    - کتابخانه های دلفی
    - مروری بر فصل

    -تاریخچه دلفی

    دلفی در سال 1995 توسط آندرس هلزبرگ در شرکت بورلند ساخته شد .
    هسته و شالوده و سینتکس (قواعد و شکل زبان برنامه نویسی) از زبان پاسکال گرفته شده است .

    IDE- و SDK و Platform

    در این بخش توضیحات مختصری را درباره ی هر یک از این اصطلاحات بیان می کنیم :
    1 – IDE : محیط توسعه مجتمع : IDE همان محیطی است که برنامه های دلفی یاهر زبان دیگری را در آن می نویسید . شاید شما بگویید که مثلا چرا بهNotepad که ما برنامه های اسمبلی را در آن می نویسیم می گوییم Editor ونمی گوییم IDE .
    بارز ترین تفاوت IDE با Editor این است که IDE شامل Debugger و مدیریتپروژه و ... می باشد . Borland Delphi و Microsoft Visual Studio .NETنمونه هایی از IDE هستند . یک IDE می تواند شامل چند زبان برنامه نویسیباشد و MS VS.NET حتی قابلیت افزودن زبان جدید به IDE را دارد .

    2 – SDK : کیت توسعه نرم افزاری : تعریف این اصطلاح کمی مشکل به نظر میرسد اما آن را این طور می توان تعریف کرد : بسته ای است شامل کامپایلر ودر بعضی مواقع کتابخانه و ... که قابلیت تولید نرم افزار را برای پلاتفرمی خاص فراهم می کند . JDK و .NET SDK نمونه هایی از SDK هستند .

    3 – Platform : هر سیستم عامل را یک پلات فرم گویند . البته پلات فرم هایینیز هستند که مانند سیستم عاملی بر روی دیگر سیستم عامل ها قرار می گیرند .
    نمونه هایی از دسته اول : Windows , Linux , DOS , MacOSX , OS/2 , Symbian .
    نمونه هایی از دسته دوم : Java Runtime , .NET Platform .
    برای تولید نرم افزار برای هر پلات فرم نیاز مند SDK مخصوص به آن پلات فرم هستیم .

    -نسخه های دلفی

    دلفی 1 (1995) : 16 بیتی بود . تحت ویندوز 3.1 . دارای کتابخانه VCL 16 بیتی .
    دلفی 2 (1996) : اولین نسخه 32 بیتی . تحت ویندوز 95 .
    دلفی 3 (1997) : 32 بیتی .
    دلفی 4 (1998) : 32 بیتی .
    دلفی 5 (1999) : 32 بیتی . این نسخه یکی از بهترین نسخه های دلفی از آب درآمد . این نسخه از دلفی دارای کامپاننت های Indy نبود .
    دلفی 6 (2000) : 32 بیتی .
    دلفی 7 (2001) : میشه گفت از نظر اکثر دلفی کار ها بهترین نسخه دلفی بود (البته دلفی 2007 میتونه بهتر باشه ) . سازگاری با Windows XP . دارای یکآپدیت پکی با نام Delphi 7.1 . در این نسخه یک پیش نمایش برای نسخه دلفیتحت دات نت وجود داشت که به طور پیش فرض در محیط دلفی نصب نمی شد .
    دلفی 8 (2003) : بدترین نسخه دلفی . این اولین نسخه دلفی تحت دات نت یاهمان Delphi.NET بود که به دلیل عدم حمایت از Win32 (پلات فرم های نسخههای قدیم) اصلا راضی کننده نبود و طرفداری نداشت .
    دلفی 2005 (2004) : در این نسخه شماره های دلفی از اعداد به سال تغییر کرد(مثلا به جای دلفی 9 دلفی 2005 بود) . این نسخه از IDE (به طور بسیارخلاصه محیط برنامه نویسی) دلفی یک محیط با سه زبان برنامه نویسی بود : 1 –سی شارپ 1.1 2 – دلفی 32 3- دلفی برای دات نت ( تحت دات نت 1.1 ) . ناماصلی این نسخه Borland Developer Studio 2.0 یا به اختصار BDS2.0 بود .
    IDE این نسخه از دلفی پر از اشکال , کند بود و اصلا خوش دست و راحت نبود به همین دلیل مورد استقبال قرار نگرفت .
    دلفی 2006 – BDS3.0 (2005) : سرعت بارگذاری (Load) IDE بهتر شده بود .
    علاوه بر دلفی و سی شارپ برای اولین بار سی بیلدر 7.0 (C++Builder 2006)نیز به این اضافه شده بود . بسیاری از اشکالات ورژن قبلی رفع شده بود ولیهنوز IDE مناسب برای کار نبود و اشکالات بسیاری به چشم می خورد .
    دلفی 2007 برای وین 32 (2007) : در این نسخه توسعه دلفی از قسمت اصلی شرکتبورلند جدا شد و به صورت بخشی مستقل در آمد که فقط روی توسعه زبان هایبرنامه نویسی و IDE ها کار می کنند به نام from Borland CodeGear . IDEبسیار بهتر از قبل شده است و حالا قابل سرمایه گذاری است . این نسخه ازدلفی از ویندوز ویستا نیز پشتیبانی می کند . این دلفی به صورت پک هایمختلف عرضه شد که از قرار زیر است :
    Delphi 2007 for Win32 : فقط شامل دلفی 2007 تحت وین 32 است .
    CodeGear RAD Studio 2007 : شامل دلفی 2007 تحت وین 32 و C++Builder 2007 است .

    -دلفی در لینوکس

    کایلکس نسخه ای از دلفی و سی بیلدر بود که تحت لینوکس بود و از کتابخانهCLX استفاده می کرد (VCL نداشت) . آخرین نسخه این برنامه در سال 2001تولید شد و دیگر توسعه نیافت ( البته آینده کایلکس با آمدن CodeGear قابلپیش بینی نیست و شاید در آینده ای نزدیک توسعه یابد . ) . این نسخه بهصورت اصلی از RedHat Linux 7.0 پشتیبانی می کرد و با نسخه های بعدی لینوکسمشکل دارد ( البته تا به امروز patch های زیادی جهت سازگاری کایلکس بانسخه های جدید لینوکس منتشر شده اما به دلیل اینکه این patch ها توسطسازنده های اصلی توسعه نیافتند چندان قابل اطمینان نبوده و سازگاری 100%را با نسخه های جدید لینوکس ندارند به همین دلیل چندان استفاده از آنهامناسب نیست ) . آخرین نسخه کایلکس Borland Kylix 3 بود .

    -کتابخانه های دلفی

    کتابخانه چیست ؟
    کتابخانه شامل یونیت ها و توابع و روال ها و کامپاننت ها (عناصر) است که کار را برای برنامه نویسی بسیار آسان می کند .

    دلفی تحت وین 32 یا همان دلفی معمولی خودمان از دو کتابخانه پشتیبانی می کند:
    1 – VCL (Visual Component Library) : دلفی به دلیل این کتابخانه جامع وکامل شهرت یافت و دوست داشتنی شد . این کتابخانه ویژوال است ( یعنی دارایعناصر بصری می باشد ) . در این کتابخانه اشیا با حرف t آغاز می شوند بهعنوان مثال tObject .
    2 – CLX : کاربرد زیادی ندارد . این کتابخانه Cross-Platform است یعنی تحتچند پلات فرم یا میشه گفت سیستم عامل استفاده می شود .بیشتر در کایلکس(دلفی در لینوکس) مورد استفاده قرار می گرفت . امکانات کمتری نسبت به VCLدارد .

    و اما دلفی دات نت دارای دو کتابخانه است :
    1 – VCL for .NET : همان VCL است اما تحت دات نت .
    2 - .NET Library : کتابخانه جامع خود مایکروسافت دات نت .

  8. #8
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    آموزش دلفی.نت Delphi.Net Learning

    این هم 21 فصل کامل [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]

  9. #9
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    قبل از هر چیز مقدمه ای بر SQL (Structured Query Language):
    SQL زبان پرس و جویی هست که توسط ANSI (American National StandardsInstitute) استاندارد شده و برای دستکاری دیتابیس ها، بازیابی و updateداده ها در بانک های اطلاعاتی مفید می باشد.
    SQL در دیتابیسهای MS Access, Paradox, DB2, Informix, MS SQL Server, My SQL, Oracle, Sybase و غیره استفاده میشود.
    متاسفانه ورژن های مختلفی از این زبان وجود دارد (SQL/PSM, SQL PL, T-SQL,MySQL, PL/SQL, PL/pgSQL , ...) اما برای اینکه همه آنها با استانداردANSI سازگاری داشته باشند باید از کلمات کلیدی یکسان در استفاده های مشابهپشتیبانی کنند. (مانند SELECT, UPDATE, DELETE, INSERT, WHERE و غیره)

    چرا SQL ؟
    SQL زبان پرس و جوی ساخت یافته است
    SQL به شما اجازه میدهد تا به آسانی به دیتابیس ها دسترسی داشته باشید
    SQL میتواند برای دیتابیس ها پرس و جو ایجاد کند
    SQL میتواند داده ها را از دیتابیس بازیابی کند
    SQL میتواند رکورد جدیدی در دیتابیس درج کند
    SQL میتواند رکوردی را از دیتابیس حذف کند
    SQL میتواند رکوردهای دیتابیس را به روز کند
    SQL برای یادگیری آسان است

    منابع:


    [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
    [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]

  10. #10
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    اولین دستوری رو که میخوام بگم دستور select هست.
    شکل کلی دستور:


    SELECT column_name(s) FROM table_name

    فرض کنید جدولی با نام inventory مربوط به مشخصات کالا داریم که دارای فیلدهای no , name , cost , color , weight هست.


    select name,cost from inventory

    تمامی فیلدهای مربوط به ستون name,cost رو به ما نشون میده
    حالا اگر بخوایم که تمامی فیلدها رو ببینیم نیازی نیست که نام همه فیلدهارو بنویسیم، کافیه به جای نام فیلدها " * " رو قرار بدیم. به صورت زیر:


    select * from inventory

    حالا این دستورات رو چطور در دلفی استفاده کنیم؟ از تب ADO یه کامپوننتADOQuery به فرم اضافه کنید و کد رو در یه button به صورت زیر بنویسید:


    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from table_name');
    ADOQuery1.Open;

    سوالی که اینجا هست اینه که چطور نتایج دلخواه رو بر اساس یه مقدار متغیر نمایش بدیم؟ برای این کار باید از دستور where استفاده کرد.


    SELECT column FROM table WHERE condition

    در قسمت condition میتونیم از شرط های مختلف استفاده کنیم
    فرض کنید در همون جدول مشخصات کالا میخوایم کالاهایی که نام اونها در یک edit نوشته میشه رو نمایش بدیم:


    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from inventory where name=aram');
    ADOQuery1.Parameters.ParamValues['param']:=Edit1.Text;
    ADOQuery1.Open;

    همونطور که می بینید اینجا از "پارامتر" استفاده شده.
    عملگرهای مقایسه ای در sql (که میتونیم برای شرط های مختلف در قسمت condition استفاده کنیم):


    = , <> , < , > , <= , >=

    <> به معنای نا مساوی هست.
    همچنین میتونید از عملگرهای منطقی AND و OR برای پیاده سازیهای مختلف استفاده کنید

  11. #11
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    دستور دیگه ای که کاربرد زیادی درselect داره ORDER BY هست که برای مرتب سازی نتایج بر اساس یه فیلد خاص استفاده میشه.
    شکل کلی دستور:


    SELECT * FROM table_name ORDER BY column

    توجه: اگر به جای * از نام فیلد استفاده کنید، مرتب سازی باید بر اساس فیلدی باشه که در نتیجه هم نمایش داده میشه.
    میشه در قسمت order by از نام چند فیلد استفاده کرد. مزیت این کار این هستکه اگر در فیلد اولی دو مقدار یکسان وجود داشته باشه، همون مقادیر بر اساسفیلد دیگه ای هم مرتب میشن.


    select * from inventory order by name,weight

    در اینجا اگر دو کالا با نام یکسان وجود داشته باشه، بر اساس وزن مرتب میشن
    بعد از نام ستونها در قسمت order by اگر DESC رو قرار بدین، نتایج به صورتنزولی مرتب میشن و در صورتی که ASC قرار داشته باشه به صورت صعودی. حالتپیش فرض در زمانی که شما حالت مرتب سازی رو مشخص نکنین، صعودی هست.

  12. #12
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    فرض کنید شما میخواین تمام مقادیر بین دو مقدار مشخص رو داشته باشین. مثلامقادیری که وزن اونها از 15 بیشتر و از 75 کمتر باشه. با توجه بهآموزشهایی که تا حالا گفته شده با استفاده از where و عملگر and میشه اینکار رو به صورت زیر انجام داد:



    select * from inventory where weight>15 and weight<75

    اما یه راه دیگه هم هست. میتونین به جای نوشتن شرط های مختلف از between استفاده کنید:



    with ADOQuery1 do begin
    close;
    sql.Clear;
    sql.add('select * from inventory where weight between 15 and 75');
    open;
    end;

    کد بالا مشخصات تمام کالاهایی رو برمیگردونه که وزن اونها بین 15 و 75 هست.

  13. #13
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    بعضی وقتها پیش میاد که چند مقدار خاص از یه فیلد رو میخوایم. باید از 5 یا 6 شرط مختلف استفاده کرد؟
    جواب منفیه. شما میتونین از گزینه in در دستور select استفاده کنین (فرضکنید دنبال کالاهایی هستیم که رنگ اونها قرمز، سفید، آبی و سبز هست):


    with ADOQuery1 do begin
    close;
    sql.Clear;
    sql.add('select * from inventory where color in ("قرمز","سفيد","آبي","سبز");
    open;
    end

  14. #14
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    اگر قرار باشه کاربر از edit استفاده کنه و مقادیر مورد نظر رو وارد کنه،در اکثر دستورات sql مقادیر متنی حتما باید بین "" قرار بگیره ("متغیر")ولی برای مقادیر عددی نیازی به " " نیست.
    مثال برای between زمانی که در فیلد عددی جستجو میکنیم:
    with adoquery1 do begin
    close;
    sql.clear;
    sql.Add('select * from inventory where weight between '+Edit1.Text+' and '+Edit2.Text);
    open;
    end;
    مثال برای in زمانی که در فیلد متنی (رشته) جستجو میکنیم:



    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from inventory where name in("'+Edit1.Text+'","'+Edit2.Text+'","'+Edit3.Text+'","'+Edit4.T ext+'")');
    ADOQuery1.Open;
    توجه داشته باشید که برعکس where که به تعریف پارامتر نیاز بود، اینجانیازی به اینکار نیست و فقط کافیه متغیر رو بین دستورات به شکل صحیح جابدیم.

    توجه: در دستور in فرقی نداره که مقدار عددی باشه یا رشته، حتما از پرانتز استفاده کنید.

  15. #15
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    در حالت عادی وقتی که از query ها استفاده میشه title مربوط به dbgrid نامفیلدهایی هست که در دستورات sql استفاده شده و معمولا به زبان انگلیسیهست. پس تکلیف برنامه های ما که به زبان فارسی هست چیه؟
    برای حل این مشکل میتونید از Alias استفاده کنید. شکل کلی دستور به صورت زیر هست:



    SELECT column AS column_alias FROM table

    حالا میخوایم که نتایج در dbgrid به صورتی نشون داده شه که دو فیلد name,color انتخاب شه و title مربوط به اونها "نام و رنگ" باشه:



    with ADOQuery1 do begin
    close;
    sql.Clear;
    sql.add('select name as نام, color as رنگ from inventory');
    open;
    end;

    حتی اگر نام جدول هم خیلی طولانی هست و شما رو کلافه کرده میتونید ازAlias به همین صورت که توضیح داده شده برای کوتاه کردن نام جدول استفادهکنید و جدول رو با نام دلخواه در برنامه خودتون به کار بگیرید.

  16. #16
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: آموزش دلفی

    تا حالا پیش اومده که بخواین تمام مقادیر یک فیلد رو توی combobox یا یهجدول دیگه داشته باشین؟ اگر همچین موردی بوده حتما میدونید که تمام مقادیرتکراری موجود در فیلد، در نتیجه حاصل هست. ممکنه چندین مقدار تکراری در یکفیلد وجود داشته باشه و بی دلیل به لیست مورد نظر شما اضافه شده باشه. راهحل این مشکل استفاده از DISTINCT در SQL هست.
    شکل کلی دستور به صورت زیر هست:



    SELECT DISTINCT column FROM table

    به طور کلی این مورد به شما کمک میکنه مقادیر منحصر به فرد یک فیلد رو داشته باشید.
    فرض کنید لیست کالاهای موجود در جدول نمونه رو میخوایم تا بدونیم که چه کالاهایی موجود هست، مطمئنا نیازی به نام های تکراری نداریم:



    with adoquery1 do begin
    close;
    sql.clear;
    sql.add('select distinct name from inventory');
    open;
    end

صفحه 1 از 2 12 آخرینآخرین

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 0
    آخرين نوشته: جمعه ۱۰ مهر ۸۸, ۱۱:۵۹
  2. سوابق كشاورز گزينه پيشنهادي وزارت آموزش و پرورش دولت دهم
    توسط hamid192 در انجمن بایگانی اخبار سیاسی
    پاسخ ها: 0
    آخرين نوشته: پنجشنبه ۱۲ شهریور ۸۸, ۰۱:۵۱
  3. ميانگين وزارت وزاري دادگستري
    توسط MR HAMID در انجمن مباحث حقوقی و قضائی
    پاسخ ها: 0
    آخرين نوشته: چهارشنبه ۲۲ اسفند ۸۶, ۰۰:۳۶
  4. پاسخ ها: 0
    آخرين نوشته: جمعه ۳۰ آذر ۸۶, ۱۳:۲۸
  5. تاپیک آموزش گیتار - مقالات آموزشی
    توسط Unknown در انجمن هنر موسیقی
    پاسخ ها: 18
    آخرين نوشته: سه شنبه ۲۲ آبان ۸۶, ۱۲:۱۹

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •