خرید بک لینک

1-12cr2-پارتیشن-بندی-external-table/" target="_blank" rel="noopener">Hybrid Partitioned Table 1 جدیدی است که اوراکل در نسخه 19c ارائه کرده است با کمک این قابلیت می توان 1 یک جدول، تلفیقی از پارتیشنهای external و internal را ایجاد کرد.

این روش از پارتیشن بندی، صرفا متدهای Range و List را پشتیبانی می کند البته در نسخه 19c امکان استفاده از متد Automatic List برای Hybrid Partitioned Table وجود ندارد و این امکان از نسخه 23c به وجود آمد.

بنابرین از این نسخه(23c) می توانیم برای 1 Hybrid Partitioned Table از قابلیت Automatic List Partitioning استفاده کنیم.

قبل از ایجاد جدول مورد نظر، دایرکتوری مربوط به دیتایی که در سیستم عامل قرار دارند را ایجاد می کنیم:

SQL> create directory E_PARTITIONs as '/PARTITIONs';
Directory created

جدول mytbl از نوع 1 است و  به روش Automatic List پارتیشن بندی شده است:

SQL> CREATE TABLE mytbl
  2  (
  3  national_id NUMBER,
  4  name        VARCHAR2(20),
  5  last_name   VARCHAR2(20),
  6  org_id      NUMBER
  7  )
  8  EXTERNAL PARTITION ATTRIBUTES(
  9  TYPE ORACLE_LOADER
 10  DEFAULT DIRECTORY E_PARTITIONs
 11  ACCESS PARAMETERS
 12  (
 13  FIELDS TERMINATED BY ',' (national_id,name,last_name,org_id)
 14  )
 15  REJECT LIMIT UNLIMITED
 16  )
 17      PARTITION BY LIST (org_id) AUTOMATIC
 18          (
 19              PARTITION p1 VALUES (1),
 20              PARTITION p2 VALUES (2),
 21  		     PARTITION p_external VALUES (3) EXTERNAL LOCATION('part1.txt')
 22          );

Table created

در صورت فعال نبودن قابلیت Automatic List Partitioning، ستون org_id صرفا مقادیر 1، 2 و 3 را قبول می کرد اما با استفاده از این قابلیت، مقادیر دیگر را هم می پذیرد:

SQL> insert into mytbl values(100,’Reza’,’Alizadeh’,1);

1 row inserted

SQL> insert into mytbl values(105,'Payan','Rafat',47);
1 row inserted

SQL> select * from mytbl;

NATIONAL_ID NAME                 LAST_NAME                ORG_ID
----------- -------------------- -------------------- ----------
        100 Armin                Bahamin                      1
        101 Jamshid              Sabet                         3
        102 Ramtollah            Rabbani                      50
        103 Abbas                Hamidian                     47
        104 Arash                Ezzati                       50
        105 Ali                  Fazli                        47
6 rows selected

تعداد پارتیشنهای این جدول را در قسمت زیر مشاهده می کنید:

SQL> select table_name,partition_name from user_tab_partitions;
TABLE_NAME PARTITION_NAME
---------- ---------------
MYTBL      P2
MYTBL      P1
MYTBL      SYS_P1043

همچنین ایجاد این جدول در نسخه 21c با خطای زیر مواجه خواهد شد:

ERROR at line 18:
ORA-30657: operation not supported on external organized table

ارائه خدمات مشاوره ، پشتیبانی و نصب و راه اندازی پایگاه داده اوراکل در سراسر کشور...................... تلفن: 09128110897 ایمیل:[email protected]

برچسب: نویسنده: خنجی تاريخ: دوشنبه 2 بهمن 1402 ساعت: 13:15

صفحه بندی