1
我有一個sales_person_type定義如下:Oracle中創建表的主鍵
CREATE OR REPLACE TYPE sales_person_type UNDER person_type (
salesAppointments sales_person_appointments
);
這是被定義爲這樣的person_type的子類:
CREATE OR REPLACE TYPE person_type AS OBJECT (
personID NUMBER,
forename VARCHAR2(30),
surname VARCHAR2(20),
dateOfBirth DATE
) NOT FINAL;
我試圖創建銷售人員表並將主鍵指定爲超類屬性,如下所示:
CREATE TABLE sales_person_table OF sales_person_type (
PRIMARY KEY (personID),
OBJECT IDENTIFIER IS PRIMARY KEY)
NESTED TABLE salesAppointments STORE AS sale_appointment_table (
(PRIMARY KEY(NESTED_TABLE_ID, appointmentID))
ORGANIZATION INDEX COMPRESS)
RETURN AS LOCATOR
但我得到這個錯誤:
SQL Error: ORA-02330: datatype specification not allowed 02330. 00000 - "datatype specification not allowed" *Cause: An attempt was made to specify the data type in the column constraint specification of an object table.
我想這是因爲即時嘗試將主鍵分配爲超類attibute?這是正確的語法嗎?
乾杯。
編輯:
現在的作品,謝謝Dimitry。