آیا دستورات DDL به صورت خودکار انجام می شود؟
آیا دستورات DDL به صورت خودکار انجام می شود؟

تصویری: آیا دستورات DDL به صورت خودکار انجام می شود؟

تصویری: آیا دستورات DDL به صورت خودکار انجام می شود؟
تصویری: اگر یکی از این ۷ نشانه را در وجود تان مشاهده کردید پس شما یک نابغه هستید. 2024, نوامبر
Anonim

است ( DDL ) زبان دستکاری داده ها اظهارات Autocommit ? نه. فقط DDL (زبان تعریف داده) بیانیه مانند ایجاد، تغییر، رها کردن، کوتاه کردن هستند خودکار.

علاوه بر این، آیا دستورات DML Autocommit هستند؟

به طور پیش فرض، الف DML بیانیه‌ای که بدون شروع صریح تراکنش اجرا می‌شود، به‌طور خودکار در صورت موفقیت انجام می‌شود یا در صورت شکست در پایان بیانیه بازگردانده می‌شود. این رفتار نامیده می شود خودکار . این رفتار با کنترل می شود AUTOCOMMIT پارامتر. DDL بیانیه همیشه خودکار.

پس از آن، سوال این است که Autocommit در SQL چیست؟ در زمینه مدیریت داده ها، خودکار حالت عملکرد یک اتصال پایگاه داده است. جایگزین برای خودکار حالت (غیر خودکار ) به این معنی است که SQL برنامه مشتری خود مسئول صدور دستورات شروع تراکنش (شروع تراکنش) و خاتمه (بازگشت commitor) است.

سپس، آیا DDL نیاز به commit دارد؟

TRUNCATE یک است DDL دستور بنابراین نیازی به صریح ندارد مرتکب شدن زیرا فراخوانی آن یک امر ضمنی را اجرا می کند مرتکب شدن . از دیدگاه طراحی سیستم، یک تراکنش یک واحد کار است. ممکن است از یک بیانگر DML منفرد چندین مورد از آنها تشکیل شود. مهم نیست: فقط معاملات کامل نیاز به COMIT دارد.

وقتی Autocommit روشن باشد چه اتفاقی می‌افتد؟

اگر AUTOCOMMIT تنظیم شده است تا 1، هر دستور SQL یک تراکنش کامل در نظر گرفته می‌شود و به‌طور پیش‌فرض زمانی که به پایان می‌رسد، متعهد می‌شود. اگر AUTOCOMMIT تنظیم شده است به 0، مجموعه ای از بیانیه های بعدی مانند یک تراکنش عمل می کند و هیچ تراکنشی تا زمانی که یک بیانیه COMMIT صریح صادر نشود، انجام نمی شود.

توصیه شده: