Я хотел создать следующие 3 - уровневая структура с использованием Oracle аспекты программирования объекта:
- Боссы
- - Менеджеры
- - - Сотрудники
3 уровень вложенности таблиц в SQL
Когда я хочу запустить скрипт для создания таблицы tab_univ_bosses следующего исключения происходит в последней строке:
Error at Command Line:31 Column:3
Error report:
SQL Error: ORA-22913: "must specify table name for nested table column or attribute"
*Cause: The storage clause is not specified for a nested table column
or attribute.
*Action: Specify the nested table storage clause for the nested table
column or attribute.
Error starting at line 33 in command:
NESTED TABLE managers STORE AS tab_univ_managers
Error report:
Unknown Command
Это мой код:
-- TYPE <EMPLOYEE>
create or replace
TYPE type_Employee AS OBJECT (
name VARCHAR2(30),
department_name VARCHAR2(30),
second_name VARCHAR2(30),
manager REF type_Employee
);
CREATE or replace TYPE type_ListEmployees
AS TABLE OF type_Employee;
-- TYPE <MANAGER>
create or replace
TYPE type_Manager AS OBJECT (
userData type_Employee,
manager REF type_Employee,
listEmployees type_ListEmployees
);
NESTED TABLE listEmployees STORE AS tab_univ_employees
CREATE or replace TYPE type_ListManagers
AS TABLE OF type_ListEmployees;
-- BASE TABLE
CREATE TABLE tab_univ_bosses (
id NUMBER PRIMARY KEY,
userData type_Employee,
managers type_ListManagers
);
NESTED TABLE managers STORE AS tab_univ_managers <--- There is a problem...
Почему вы выбираете эта структура? Разумеется, руководители и руководители тоже работают - вы можете использовать одну таблицу для представления этого (или объекта, если хотите использовать объекты). – MT0
Это моя домашняя работа :) – Wicia
'...); NESTED TABLE listEmployees STORE AS tab_univ_employees это тоже проблема, то есть синтаксическая ошибка – Trinimon