الفبایت، الفبای بهترین‌ها

مفهوم تراکنش در MySQL

گاهی اوقات می‌خواهیم شاهد اجرای چندین دستور با هم باشیم و هنگامی که یکی از دستورات با مشکل مواجه شد مجموعه ی دستورات اجرا نشوند. (مانند عملیات‌های بانکی). روشی که ما در قبل برای اجرای دستورات استفاده می‌کردیم، مناسب این کار نبود؛ به همین دلیل می‌خواهیم امروز با مفهوم تراکنش آشنا شویم. با ما در الفبایت همراه باشید.

مفهوم تراکنش چیست؟

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

خواص تراکنش:

  1. خاصیت یکپارچگی (Atomicity)
  2. خاصیت سازگاری (Consistency)
  3. خاصیت تفکیک (Isolation)
  4. خاصیت پایداری(Durability)

موارد بالا خواص تراکنش‌ها در MySQL هستند که به توضیح آن‌ها می‌پردازیم.

حروف اول این چهار خاصیت به ترتیب کلمه ی ACID را تشکیل می‌دهند و فقط جدول نوع InnoDB از ACID پشتیبانی می‌کند.

قفل گذاری:

همانطور که در مطلب شاخص‌بندی جدول‌ها در MySQL توضیح داده شد قفل کردن انواع جدول‌ها باهم راهکارهای متفاوتی دارند. برای ایجاد یک محیط برای تراکنش باید جدول قفل شود.

انواع قفل:

جدول نوع MyISAM از قفل جدول، جدول نوع BDB از قفل صفحه ,جدول نوع InnoDB از قفل سطر پشتیبانی می‌کنند.

خب در اینجا به پایان قسمت اول از آموزش تراکنش‌ها در MySQL می‌رسیم.

لطفا نظرها و دیدگاه‌های خود را برای افزایش کیفیت پست‌های بعدی با ما درمیان بگذارید.

با ما در الفبایت همراه باشید…