انجمن برنامه نویس

آموزش mysql

شروع موضوع توسط برنامه نویس ‏12/6/14 در انجمن پایگاه داده MySQL

گنجینه های
برنامه نویسی
فیلم های آموزشی
زبان های برنامه نویسی
فیلم های آموزشی
پروژه محور C#
فیلم های آموزشی
برنامه نویسی اندروید
فیلم های آموزشی
طراحی سایت
فیلم های آموزشی
برنامه نویسی پایه
گنجینه برنامه نویسی C# آموزش برنامه نویسی C سیستم مدیریت بانک آموزش اندروید - مقدماتی آموزش زبان HTML اصول و مبانی برنامه نویسی
گنجینه آموزش ASP .Net آموزش برنامه نویسی C++‎ پیاده سازی مدیریت آتلیه آموزش اندروید - تکمیلی آموزش زبان CSS آموزش الگوریتم و فلوچارت
گنجینه برنامه نویسی PHP آموزش برنامه نویسی C# پیاده سازی سیستم هتلداری آموزش اندروید - پیشرفته آموزش زبان Java Script آموزش تبدیل فلوچارت به کد
گنجینه آموزش طراحی وب آموزش برنامه نویسی جاوا شبیه سازی دستگاه عابربانک آموزش ساخت لیست ایمیل آموزش زبان jQury برنامه نویسی اسمال بیسیک
گنجینه برنامه نویسی متلب آموزش برنامه نویسی PHP پیاده سازی مدیریت آموزشگاه آموزش ساخت گالری تصاویر آموزش زبان XML آموزش برنامه نویسی اسمبلی
گنجینه برنامه نویسی اندروید آموزش برنامه نویسی پایتون پیاده سازی سیستم صدور بلیت آموزش کنترل ربات با اندروید آموزش طراحی Responsive طراحی سایت ویژه کودکان
گنجینه برنامه نویسی VB .Net آموزش برنامه نویسی اندروید پیاده سازی سیستم نوبت دهی آموزش ارتباط با دیتابیس سرور ساخت سایت خبری کدنویسی سریع با Emmet
گنجینه زبان های برنامه نویسی آموزش برنامه نویسی زبان R سیستم حسابداری و انبارداری زبان بیسیک فور اندروید (B4A) ساخت سایت فروشگاه آموزش کار با پایگاه داده
  1. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    MySQL چیست؟

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


    بانک اطلاعاتی(database) محل ذخیره سازی اطلاعات است. معمولا اطلاعات به دسته های مرتبطی که در مدمنظمی ذخیره شده اند سازماندهی شده اند،که در صورت لزوم میتوان آنها را اصلاح،به روز رسانی،جستجو، بازیابی و یا حذف کرد.

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

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

    پایگاه داده MYSQL از یک یا چند جدول از داده های سازمان یافته که میتوانند با هم در ارتباط باشند، ساخته شده است.

    اگر شما با صفحات گسترده Excel/Openoffice و یا جداول Html، که در آنها در بالای هر ستون ردیفی از داده ها جای گرفته است آشنا هستید، پس شما در حال حاضر بر مفهوم پایگاه داده نیمه مسلط هستید! و اگر نه، با ما باشید در مقالات بعدی ما توضیح خواهیم داد!

    MySql به طور رسمی بصورت " my-ess-cue-el" تلفظ می شود، ولی گاهی بصورت " my sequel" و یا تغییرات دیگری نیز خوانده میشود.
     
    elahi از این پست تشکر کرده است.
  2. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    مبانی کار با mysql

    آشنایی با مبانی کار با MYSQL شامل طریقه اتصال به MYSQL, ایجاد پایگاه داده و نیز ایجاد و حذف جدول در MYSQL برای کسانی که میخواهند در php با پایگاه داده کار کنند لازم است


    در این بخش سعی کرده ایم که اصول و مبانی کار با MYSQL را به صورتی ساده و قابل فهم براي کسانی که تازه شروع به کار با پایگاه هاي داده کرده اند، ذکر کنیم.

    PHP بصورت از پیش تعریف شده، اکثر پایگاه هاي داده ها را پشتیبانی می کند، mSQL ,FilePro ,dBase MySQL ,Oracle, PostgreSQL ,Sybase . اگر شما بخواهید از پایگا ه هاي داده اي که به صورت از پیش تعریف شده پشتیبانی نمی شوند، استفاده کنید (مانند Access و یا SQL Server) باید از توابع PHP ODBC(Open DateBase Connectivity) به همراه راه اندازهاي پایگاه داده (ODBC Drivers) استفاده کنید.

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

    طریقه اتصال به MySQL
    قبل از شروع هر کاري باید به MySQL متصل شویم. براي این کار از دستور زیر استفاده میکنیم:

    ( در مثالها به جای() از علامتهای <> استفاده کنید)

    کد:
    Sorry, you need to register or login to see this BBcode !


    تابع mysql_connect داراي سه آرگومان می باشد. آرگومان اول ، میزبان (Host) را مشخص می کند (منظور از هاست ،کامپیوتری است که Mysql روی آن نصب شده است و تمام داده ها آنجا ذخیره میشوند. در برنامه هایی که ما مینویسیم معمولا localhost است) . دو آرگومان بعدي، نام کاربري و کد رمز را براي اتصال به پایگاه داده، ارسال می کنند. در صورتی که اتصال با شکست مواجه شود، پیغام خطایی در browser نشان داده می شود.

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


    کد:
    Sorry, you need to register or login to see this BBcode !


    ایجاد یک بانک اطلاعاتی در MySQL
    پس از اتصال به MySQL شما میتوانید با استفاده از دستور زیر یک بانک اطلاعاتی جدید ایجاد کنید.

    کد:
    Sorry, you need to register or login to see this BBcode !

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

    برای انجام کارهاي مختلف بر روي بانک اطلاعاتی ازدستورات SQL استفاده می کنیم. روند استخراج اطلاعات از یک پایگاه داده به این صورت است که ابتدا یک query به زبان SQL نوشته می شود وسپس این query با استفاده ازدستور زیر عملیات لازم را بر روي بانک اطلاعاتی انتخاب شده، انجام می دهد:

    کد:
    Sorry, you need to register or login to see this BBcode !


    ایجاد یک جدول
    برای ایجاد یک جدول ، این query را می نویسیم:

    کد:
    Sorry, you need to register or login to see this BBcode !



    با استفاده ازاینquery جدول جدیدي ایجاد می شود که شامل یک فیلد به نام id (که primary kay است) و فیلدی به نام Firstname از نوع کاراکتري با طول 12 و همچنین فیلدي به نام Lastname با طول 15 می باشد.



    حذف جدول و پایگاه داده
    شاید در بعضی موارد لازم باشد جدولی از پایگاه داده تان را حذف کنید.دستور زیر برای حذف جدول به کار میرود:

    کد:
    Sorry, you need to register or login to see this BBcode !


    برای حذف کامل پایگاه داده نیز از دستور زیر استفاده کنید:


    کد:
    Sorry, you need to register or login to see this BBcode !
     
  3. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    نیازمندیهای mysql

    ک روش ایجاد، به روز رسانی، اصلاح و حذف از پایگاه داده Mysql استفاده از یک GUI مانند phpMyAdmin است. یکی دیگر از روش های محبوب استفاده از اسکریپت های php در یک وب سایت است


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

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

    GUI (graphical user interface) مانند phpMyAdmin است. phpMyAdminبه شما اجازه می دهد با کلیک بیشتر و تایپ کمتر ، پایگاه داده Mysql را روی مرورگر خودتان نگهداری کنید.( شما میتوانید با میزبان وب خود در مورد گزینه هایتان صحبت کنید ، اگر آنها GUI (رابط کاربر گرافیکی) MYSQL را پشتیبانی نمیکنند. )

    یکی دیگر از روش های محبوب نگهداری بانک اطلاعاتی Mysql استفاده از اسکریپت های php در یک وب سایت است، که در آن می توان اطلاعات را در یک پایگاه داده جمع آوری و ذخیره کرد، و در صورت نیاز آنها را اصلاح، بازیابی و به روز رسانی کرد. ولی در این روش نیز یک دانش پایه از Mysql نیاز است.
     
  4. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    Syntax ، قواعد دستوری MYSQL

    syntax مجموعه قواعدی است که مشخص میکند MYSQL چگونه باید نوشته شود


    syntax مجموعه قواعدی است که مشخص میکند Mysql چگونه باید نوشته شود. MYSQL فقط یک قاعده اصلی را دنبال میکند، اینکه هر جمله باید با علامت سمی کولون تمام شود، ";" نشان میدهد که دستور به پایان رسیده است.

    کد MYSQL برای خواندن و نوشتن بسیار آسان است، و تا زمانیکه زبان انگلیسی را درک کنید این را احساس میکنید.

    یک عادت خوب هنگام نوشتن MYSQL ،با حروف بزرگ نوشتن کلمات رزرو شده است که در هر دستوری که نوشته شود وجود دارند. این کمک میکند که کلمات کلیدی جدا شوند و منظور کد در یک نگاه واضح تر باشد.

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



    کد:
    Sorry, you need to register or login to see this BBcode !


    اگر شما فکر میکنید که مثال دوم برای خواندن و تفسیر کردن راحت تر است، ما با مخالفت ها موافقت میکنیم!
     
  5. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    تغییر جداول در mysql

    دستور ALTER TABLE در MYSQL توانایی اضافه، حذف و تغییر نام یک ستون ، همچنین ایجاد و از بین بردن شاخص ها و تغییر نوع یک ستون موجود را میدهد


    توانایی تغییر ساختار یک جدول پایگاه داده پس از اینکه ساخته شد و یا حتی وقتی شامل داده ها باشد، دیر یا زود مفید واقع خواهد شد. دستور ALTER TABLE به شما توانایی اضافه، حذف و تغییر نام یک ستون ، همچنین ایجاد و نابود کردن شاخص ها و تغییر نوع یک ستون موجود را میدهد.

    ♦ ALTER TABLE - اضافه کردن ستون

    دستور اضافه کردن یک ستون جدید به جدول موجود به شکل زیر است:


    کد:
    Sorry, you need to register or login to see this BBcode !


    بطور پیش فرض ، ستونهای جدید به پایان جدول مشخص شده اضافه میشوند. شما میتوانید برای اضافه کردن ستون جدید به ابتدای جدول از کلمه "FIRST" استفاده کنید ، و یا برای مشخص کردن اینکه ستون جدید دقیقا کجا و بعد از کدام ستون قرار بگیرد، "AFTER colname" را در انتهای دستور به کار گیرید.


    کد:
    Sorry, you need to register or login to see this BBcode !


    اگر شما نگران این هستید که نام ستونی که وارد میکنید قبلا وجود دارد، میتوانید به جای دستور "ADD COLUMN" از دستور "ADD UNIQUE" استفاده کنید. بدین ترتیب ستون جدید فقط در صورتی که قبلا ستونی با این نام نداشته باشید ، ایجاد میشود.



    ♦ ALTER TABLE - حذف ستون

    دستور حذف ستون موجود به شکل زیر است:

    کد:
    Sorry, you need to register or login to see this BBcode !

    همه داده های موجود در ستون حذف شده نیز از بین خواهند رفت.


    کد:
    Sorry, you need to register or login to see this BBcode !


    ♦ ALTER TABLE - تغییر نام جدول

    دستور تغییر نام کل جدول:


    کد:
    Sorry, you need to register or login to see this BBcode !


    ♦ ALTER TABLE - اصلاح جدول

    برای تغییر/اصلاح یک ستون، دستور به شکل زیر است:

    کد:
    Sorry, you need to register or login to see this BBcode !


    به عنوان جایگزین،میتوان از "CHANGE" برای اصلاح نوع یک ستون استفاده کرد. هنگام استفاده از دستور "CHANGE" باید هم نام قدیمی و هم نام جدید ستون مشخص شوند، اما هر دو میتوانند همان نام باشند و در واقع نام ستون تغییر نمیکند.

    کد:
    Sorry, you need to register or login to see this BBcode !
     
    mrs225 از این پست تشکر کرده است.
  6. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    دستکاری داده ها در mysql

    دستکاری داده ها در MYSQL، شامل درج داده در پایگاه داده MYSQL با دستور "insert"، بازیابی و نمایش اطلاعات با دستور "select"، تغییر داده ها با "update" و حذف با استفاده از "delete" میباشد


    دستکاری داده در MYSQL شامل موارد زیر میباشد:

    درج داده در MYSQL
    بطور کلی برای عمل قرار دادن داده ها در یک جدول پایگاه داده MYSQL از کلمه "insert' استفاده میشود. از سینتکس زیر برای درج داده استفاده میشود:


    کد:
    Sorry, you need to register or login to see this BBcode !



    توجه داشته باشیدکه تعداد مقادیری که در این Query مشخص میشوند باید با تعداد ستونهای جدول و همچنین نوع آن برابر باشد، در غیر اینصورت Query کار نمیکند. اگر برای یکی از فیلدها مقداری ننویسید (البته اگر آن فیلد NOT NULL تعریف نشده باشد) مقدار default در آن قرار میگیرد ، که اگر موقع ساختن جدول این مقدار پیش فرض تعیین نشده باشد null خواهد شد.



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

    کد:
    Sorry, you need to register or login to see this BBcode !

    این دستور تمام فیلد های جدول Tablename را برای شما ارسال میکند. اگر شرطی در پرس و جو لازم باشد از "where" استفاده میکنیم:



    کد:
    Sorry, you need to register or login to see this BBcode !


    با این دستور به جای اینکه تمام اطلاعات جدول برای شما فرستاده شود، فقط رکورد هایی که در جدول شرط name=value1 را شامل شوند، می آیند. شرط هایمان میتوانند چند حالت داشته باشند و با "and" و "or" میتوانید هر شرطی را که خواستید، اضافه کنید.

    همچنین اگر خواستید که فقط فیلد های خاصی از هر رکورد برای شما ارسال شود ،میتوانید ستونهایی از جدول را که میخواهید به جای استفاده از "*" در query درج کنید و فقط آنها برای شما ارسال میشوند. (فیلد ها با کاما جدا شوند.)



    تغییر و به روز رسانی اطلاعات
    اغلب داده هایی که در جدول MYSQL شما ذخیره شده اند نیاز به تغییر، به روز کردن و یا جایگزینی خواهند داشت، دستورالعمل "update" برای این هدف استفاده میشود. شما میتوانید همزمان چند رکورد را ویرایش کنید، سینتکس این دستور بصورت زیر است:


    کد:
    Sorry, you need to register or login to see this BBcode !


    حذف داده از MYSQL
    هنگامیکه در یک جدول MYSQL دیگر نیازی به یک رکورد و یا سطر نداشته باشید، میتوانید با استفاده از دستور "delete" از شرّ آن خلاص شوید. سینتکس این دستور به شکل زیر است:

    کد:
    Sorry, you need to register or login to see this BBcode !


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





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

    کد:
    Sorry, you need to register or login to see this BBcode !

    در این مثال خروجی بر اساس FieldName مرتب میشود و کلمه ASC بیانگر صعودی بودن مرتب سازی است، اگر بخواهید مرتب سازی نزولی باشد به جای ASC از کلمه DESC استفاده کنید. برای جلوگیری از نشان دادن داده های تکراری از GROUP BY استفاده کنید.



    LIMIT :
    جزء LIMIT در عبارت SELECT کلید حل بسیاری از مشکلات است. به وسیله این جزء است که ما می توانیم سطرهاي مورد نظر خود از DataBase را در Query خود داشته باشیم .LIMIT به دو شکل به کار می رود با یک آرگومان و یا با دو آرگومان ،این آرگومانها عدد هستند ، اگر LIMIT با یک آرگومان استفاده شود تعداد جواب به آن عدد محدود می شود ،اما اگر LIMIT با دو آرگومان استفاده شود آرگومان اول مشخص کننده سطر آغازین است و آرگومان دوم تعداد سطرهایی را که باید برگردانده شوند را مشخص می کند ، البته باید به این نکته توجه کرد که در SQL سطرها از صفر ( 0) شروع می شوند نه از یک.

    COUNT :
    برای شمردن نتیجه یک SELECT که فقط تعداد مهم باشد از این تابع استفاده کنید:

    کد:
    Sorry, you need to register or login to see this BBcode !
     
    mrs225 از این پست تشکر کرده است.
  7. برنامه نویس

    تاریخ عضویت:
    ‏27/7/13
    ارسال ها:
    267
    تشکر شده:
    54
    امتیاز دستاورد:
    32
    پشتیبان گیری و بازیابی پایگاه داده mysql

    MYSQL پشتیبان گیری از پایگاه داده را به راحتی برای ما فراهم کرده است، با استفاده از "mysqldump" شما میتوانید تمام توضیحات ضروری MYSQL برای ایجاد دوباره یک پایگاه داده را در یک فایل واحد داشته باشید


    آیا تا به حال شده که Backup گیری از داده هایتان را فراموش کنید و برای آن تأسف بخورید!؟ با این حال از دست دادن داده ها ممکن است رخ بدهد و تمام روز شما را خراب کند. ( از من نپرسید که از کجا میدانم! ) این همیشه مهم است که از داده هایتان نسخه پشتیبان بگیرید، و پایگاه داده ها از این قاعده مستثنی نیستند. خوشبختانه MYSQL در حال حاضر این مشکل را پیش بینی کرده است و پشتیبان گیری از پایگاه داده را به راحتی برای ما فراهم کرده است.

    با استفاده از "mysqldump" شما میتوانید تمام توضیحات ضروری MYSQL برای ایجاد دوباره یک پایگاه داده را در یک فایل واحد داشته باشید.

    توجه داشته باشید که ، دستور mysqldump مستقیما از خط فرمان اجرا میشود و تا زمانیکه به MYSQL وصل باشید نمیتواند اجرا شود.

    سینتکس آن بصورت زیر است:

    کد:
    Sorry, you need to register or login to see this BBcode !


    یک مثال عملی :

    کد:
    Sorry, you need to register or login to see this BBcode !

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

    چندین گزینه مفید وجود دارد که میتوان به mysqldump اضافه کرد ، اما در اینجا فقط دو مورد را معرفی خواهیم کرد. مورد اول، add-drop-table-- ، که عبارت DROP TABLE را قبل از هر عبارت CREATE TABLE در فایل خالی جدید اضافه میکند، پس مطمئن باشید که در طول فرآیند بازگردانی هیچ داده قدیمی وجود نخواهد داشت.

    مورد دوم، no-data-- است که تنها، ساختار پایگاه داده را به فایل پشتیبان روبرداری میکند، و داده های ذخیره شده در پایگاه داده را روگرفت/پشتیبانی نمیکند.

    کد:
    Sorry, you need to register or login to see this BBcode !


    فرآیند بازگردانی، که باید تا به حال لازم شده باشد، با استفاده از دستور "mysqlimport" امکانپذیر است و سینتکس آن بصورت زیر است:


    کد:
    Sorry, you need to register or login to see this BBcode !

    یک مثال عملی :

    کد:
    Sorry, you need to register or login to see this BBcode !
     
    sezare3 از این پست تشکر کرده است.