0

これをサイトの「右括弧がない」プールに追加して申し訳ありませんが、私はそれらを調べました。これらは私のコードに類似しているように見えた2つだけであり、どちらも問題を解決するのに役立ちませんでした。正しい方向。CHECK制約とOracleを作成しようとした場合のORA-00907 :3つのForeginキーを含む複合キーを作成します

私もデータベース担当者ではありませんが、これを処理するしかないので、助けていただければ幸いです。私の問題は、「制約」がどこにあるか、またはおそらくどこに、またはどのようにテーブルスペース参照を追加したかに関係しているように思われます。スクリプトで変更したのは、アプリ会社から提供されたオリジナルからテーブルスペース参照を追加することだけでした。

これは、会社が提供した元のスクリプトの項目の1つです(この投稿用に編集されています)(他のすべては類似しており、同じ場所で同じエラーが発生します):

CREATE TABLE my_sys_cache_entry
(
            myPVStream BLOB,
            myEntrySource VARCHAR2 (32) 
,  CONSTRAINT my_sys_cache_entry_PK PRIMARY KEY (myInsKey)
)
LOB(myPVStream) STORE AS (DISABLE STORAGE IN ROW);

これは、追加されたテーブルスペース参照で機能させるために行った最後の変更です。

CREATE TABLE my_sys_cache_entry
(
            myPVStream BLOB,
            myEntrySource VARCHAR2 (32),CONSTRAINT my_sys_cache_entry_PK PRIMARY KEY (myInsKey) TABLESPACE "MY_DYN_IDX_01"
) TABLESPACE "MY_DYN_DAT_01" 
            LOB(myPVStream) STORE AS (TABLESPACE "MY_DYN_LOB_01" DISABLE STORAGE IN ROW);

これは私が得ているエラーです:

myEntrySource VARCHAR2 (32),CONSTRAINT my_sys_cache_entry_PK PRIMARY KEY (myInsKey) TABLESPACE "MY_DYN_IDX_01"
                                                                                                *
ERROR at line 23:
ORA-00907: missing right parenthesis  

これを機能させるためにいくつかの方法を試しました。元々、CONSTRAINTは現在の場所の下の新しい行にあり、最後の)はその下の行にありました(元の例を参照)。まだエラーが発生しました。最初のTABLESPACEの後に)を同じ行に配置しましたが、それでもエラーが発生しました。CONSTRAINTから最後の1行にすべてを移動しても、エラーが発生します。CONSTRAINTの前に削除された、で試してみたかどうか思い出せません。何かご意見は?

テーブルスペース参照なしではテストできません。

4

1 に答える 1

1

そこに「usingindex」を追加します。

CONSTRAINT my_sys_cache_entry_PK PRIMARY KEY (myInsKey)
 USING INDEX TABLESPACE "MY_DYN_IDX_01"

LOB部分は問題ありません。例えば

SQL> CREATE TABLE my_sys_cache_entry
  2  (
  3              myInsKey number, myPVStream BLOB,
  4              myEntrySource VARCHAR2 (32),
  5              CONSTRAINT my_sys_cache_entry_PK PRIMARY KEY (myInsKey) using index TABLESPACE users
  6  ) TABLESPACE users
  7              LOB(myPVStream) STORE AS (TABLESPACE users DISABLE STORAGE IN ROW);

Table created.
于 2013-01-07T17:20:23.563 に答える