Oracle
 sql >> база данни >  >> RDS >> Oracle

Създаване на индекс

Ако сте създали таблицата с ограничението на първичния ключ, тогава вече имате уникален индекс на полетата, принадлежащи на PK; този индекс е създаден, когато сте добавили PK ограничението и има незначително име:

SQL> create table TEST_PK_IDX(id number primary key, descr varchar2(100));

Table created.

SQL> select index_name, uniqueness, column_name
  2  from user_ind_columns c
  3         inner join user_indexes i
  4           using (index_name)
  5  where i.table_name = 'TEST_PK_IDX';

INDEX_NAME           UNIQUENESS           COLUMN_NAME
-------------------- -------------------- --------------------
SYS_C007838          UNIQUE               ID

Въпреки това, ако трябва да създадете различен индекс, можете да използвате:

SQL> create index idx_test on test_pk_idx(descr);

Index created.

SQL> select index_name, uniqueness, column_name
  2  from user_ind_columns c
  3         inner join user_indexes i
  4           using (index_name)
  5  where i.table_name = 'TEST_PK_IDX';

INDEX_NAME           UNIQUENESS           COLUMN_NAME
-------------------- -------------------- --------------------
SYS_C007838          UNIQUE               ID
IDX_TEST             NONUNIQUE            DESCR

SQL>




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използването на select в ELSE на оператор CASE ми дава ORA-00937:не групова функция за една група

  2. Създайте материализиран изглед, който опреснява записите ежедневно

  3. Използвайки Oracle SQL, как един ден извежда номер на седмицата и ден от седмицата?

  4. Как мога да посоча началната страница на Oracle, която да използвам, когато използвам System.Data.OracleClient

  5. Как анализирате прост XML фрагмент в Oracle PL/SQL и го зареждате в глобална временна таблица?