0

Oracle ExpressEddition10gを使用しています。

以下のDDLは、「REFERENCESTABLE_A_PK」の行にDBエラーをスローします

「SQLエラー:ORA-00942:表またはビューが存在しません」

CREATE TABLE TABLE_A (
    COLUMN_A    NUMBER,
    COLUMN_B    NUMBER,
    COLUMN_C    NUMBER,
    COLUMN_D    NUMBER,
    CONSTRAINT TABLE_A_PK 
        PRIMARY KEY (COLUMN_A, COLUMN_B)
)

CREATE TABLE TABLE_B (
    COLUMN_A    NUMBER,
    COLUMN_B    NUMBER,
    COLUMN_Y    NUMBER,
    COLUMN_Z    NUMBER,

    CONSTRAINT TABLE_A_FK 
        FOREIGN KEY (COLUMN_A, COLUMN_B)
        REFERENCES TABLE_A_PK
)

名前付き制約を外部キー参照として使用できますか?もしそうなら、どのように?

4

1 に答える 1

1

参照しているキーの名前を指定するのではなく、列を指定するので、いいえ、制約の名前を参照することはできません。次のようなものを指定する必要があります

CREATE TABLE TABLE_B (
    COLUMN_A    NUMBER,
    COLUMN_B    NUMBER,
    COLUMN_Y    NUMBER,
    COLUMN_Z    NUMBER,

    CONSTRAINT TABLE_A_FK 
        FOREIGN KEY (COLUMN_A, COLUMN_B)
        REFERENCES TABLE_A( COLUMN_A, COLUMN_B )
)
于 2012-12-07T19:48:35.577 に答える