Может кто-нибудь объяснить, какие вложенные объекты таблицы находятся в Oracle? При построении интерфейса между системами я обнаружил, что было для меня нечетным столбцом SYS_NC00054 $. После некоторого исследования я обнаружил, что он был вложенным объектом таблицы из созданного мной индекса функции.Что такое вложенные объекты таблицы в Oracle?
ответ
функции на основе индексов отличаются от вложенных таблиц.
регулярный индекс построен на реальные колонны ...
create index emp_job_idx on emp (job)
/
... в то время как индекс функции на основе строится на функциях, применяемых к колоннам. Например, мы могли бы, что индекс можно использовать, когда мы запрашиваем столбец даты без времени элемента ...
create index emp_hire_idx on emp(trunc(hiredate))
/
Когда мы запрашиваем USER_IND_COLUMNS, индексированный столбец показывает в первом случае, но не во втором, потому что мы не индексируем фактический столбец. То, что мы видим вместо этого система создается «столбец» ....
SQL> select index_name, column_name
2 from user_ind_columns
3 where table_name = 'EMP'
4/
INDEX_NAME COLUMN_NAME
------------------------------ ---------------
PK_EMP EMPNO
EMP_UK ENAME
EMP_JOB_IDX JOB
EMP_HIRE_IDX SYS_NC00010$
SQL>
Мы можем увидеть грим индекса в USER_IND_EXPRESSIONS ...
SQL> select index_name, column_expression
2 from user_ind_expressions
3 where table_name = 'EMP'
4/
INDEX_NAME COLUMN_EXPRESSION
------------------------------ --------------------
EMP_HIRE_IDC TRUNC("HIREDATE")
SQL>
Вложенные таблицы
Вложенные таблицы - это нечто другое: они представляют собой определяемые пользователем массивы простых или сложных типов. Они могут использоваться для определения коллекций или столбцов PL/SQL в таблице ORDBMS. Подобно этому ...
SQL> create or replace type address_t
2 as object
3 (
4 address_line_1 varchar2(70)
5 , address_line_2 varchar2(70)
6 , address_line_3 varchar2(70)
7 , address_line_4 varchar2(70)
8 , address_line_5 varchar2(70)
9 , postcode postcodestructure
10 ) final;
11/
create or replace type address_t
*
ERROR at line 1:
ORA-02303: cannot drop or replace a type with type or table dependents
SQL>
SQL> create or replace type address_nt as table of address_t
2/
Type created.
SQL>
SQL> create table contact_details (
2 person_id number not null
3 , email_address varchar2(254)
4 , addresses address_nt
5 )
6 nested table addresses store as nested_addresses
7/
Table created.
SQL>
В принципе, таблица с столбцом, в котором хранятся данные в виде другой таблицы (или другого сложного типа): таблица, вложенная внутри другой.
- 1. Что такое объекты JPA?
- 2. Что такое мутирующие таблицы в Oracle?
- 3. Oracle ODB - вложенные таблицы
- 4. Oracle, объект таблицы и вложенные таблицы
- 5. Oracle, что такое значение таблицы SYS.SYN $?
- 6. Что такое реляционные объекты?
- 7. Что такое неуправляемые объекты?
- 8. Что такое неизменяемые объекты?
- 9. Что такое закрепленные объекты?
- 10. Что такое объекты JSON
- 11. Что такое отложенные объекты?
- 12. Что такое all_tab_columns in oracle?
- 13. Oracle: Что такое «(+) =»?
- 14. Что такое клиент Oracle?
- 15. Oracle: Что такое транзакция?
- 16. Что такое Oracle ADF?
- 17. Что такое Oracle Session?
- 18. Что такое эксперимент Oracle?
- 19. Что такое просмотр в Oracle?
- 20. Что такое EXTPROC в Oracle?
- 21. Селективные таблицы/объекты Oracle Backup
- 22. Что такое вложенные функции? Для чего они?
- 23. Что такое перекошенный столбец в Oracle
- 24. Что такое «USER-объекты Windows»
- 25. Что такое статические вложенные классы в Java?
- 26. Что такое «вложенные атрибуты» в рельсах?
- 27. Что такое вложенные проекты в eclipse/java
- 28. Что такое объекты просмотра словаря?
- 29. Что такое объекты модели Python?
- 30. Объекты PHP - Что такое объект?
+1 для ссылки –