همانطور که می دانید، برای اجرای دستورات DMLای، رکوردها ابتدا قفل (Lock) میشوند و اگر Sessionای تلاش کند همان رکورد را تغییر دهد، باید تا زمان آزاد شدن قفل منتظر بماند و به صورت پیش فرض، این زمان انتظار نامحدود است. البته در نسخههای پیشین پایگاه داده اوراکل، عبارت WAIT همراه با دستور SELECT FOR UPDATE می توانست محدودیتی را در این زمینه ایجاد کند و به کاربران این امکان را میداد که مشخص کنند پیش از Rollback شدن دستور، چه مدت برای آزاد شدن قفل منتظر بمانند.
برای مثال:
Connected to Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 SQL> select * from tbl for update wait 10; ORA-30006: resource busy; acquire with WAIT timeout expired