اوراکل 23ai – مشاهده سابقه دسترسی به جداول

از اوراکل 23ai ویوی جدیدی به نام [dba|all|user]_table_access_stats ارائه شد که بر اساس آن می توان سابقه دستیابی به جداول و پارتیشنها را مشاهده کرد. هر جدول و یا پارتیشن در هر instance چند بار scan شده و تاریخ آخرین دسترسی به جدول در چه زمانی بوده است.

SQL> create table jadval(id number,name varchar2(100), last_name varchar2(100));
Table created.
SQL> insert into jadval values(1,'payan','rafat');
1 row created.
SQL> select TABLE_NAME,PARTITION_NAME,INSTANCE_ID,READ_COUNT,LAST_ACCESSED_TIME from user_table_access_stats;
no rows selected
SQL> select * from jadval;
        ID NAME    LAST_NA
---------- ------- -------
         1 payan   rafat
SQL> select TABLE_NAME,PARTITION_NAME,INSTANCE_ID,READ_COUNT,LAST_ACCESSED_TIME from user_table_access_stats;
TABLE_NAME PARTITION_NAME  INSTANCE_ID READ_COUNT LAST_ACCESSED_TIME
---------- --------------- ----------- ---------- -------------------------
JADVAL                               1          2 01-JAN-25 08.27.33 AM
SQL> select * from jadval;
        ID NAME    LAST_NA
---------- ------- -------
         1 payan   rafat
SQL> select TABLE_NAME,PARTITION_NAME,INSTANCE_ID,READ_COUNT,LAST_ACCESSED_TIME from user_table_access_stats;
TABLE_NAME PARTITION_NAME  INSTANCE_ID READ_COUNT LAST_ACCESSED_TIME
---------- --------------- ----------- ---------- -------------------------
JADVAL                               1          3 01-JAN-25 08.28.25 AM

(بیشتر…)

Data Redaction و بهبودی برای viewها – اوراکل 23.6

اوراکل در نسخه 23.6 قابلیتهای جدیدی را در زمینه Data Redaction ارائه کرده است که یکی از این قابلیتها، پشتیبانی از Data Redaction در سطح view هست. در نسخه های قبلی، اگر در اجرای یک view به ستون Redact شده ای رجوع می شد، با خطای ORA-28094: SQL construct not supported by data reduction مواجه می شدیم اما در نسخه 23ai این قبیل Viewها را می توان بدون خطا اجرا کرد. در ادامه با سناریویی این مسئله را در دو نسخه 21c و 23ai بررسی می کنیم.

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

SQL> create table tb(id number,name varchar2(14),last_name varchar2(14),salary number);
Table created
SQL> insert into tb values(1,’Ali’,’Geraili’,9850000);
1 row inserted
SQL> commit;
Commit complete

(بیشتر…)