1

DB2 で非クラスター化インデックスを作成する方法を教えてください。そのためのコマンドが見つかりません。3 つの列に 1 つのインデックスを作成したいと考えています。私は試した:

CREATE INDEX IX_ACCOUNTNOTES_DATE_TYPE 
ON CPMTD.ACCOUNT_NS (ACCOUNT_ID,CREATED_DATE,NOTE_TYPE);"

次のようなエラーが表示されます:

   DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=;;TED_DATE,NOTE_TYPE );END-OF-STATEMENT,       DRIVER=3.50.152   

    Message: An unexpected token "" was found following "".  Expected tokens may include:  "TED_DATE,NOTE_TYPE )".. SQLCODE=-104, SQLSTATE=42601, DRIVER=3.50.152 

また、db2 では create nonclustered index コマンドが機能しません。

どんな助けでも大歓迎です。

ありがとうございました。

4

1 に答える 1

4

通常CREATE INDEX (DB2 for z/OS)または CREATE INDEX (DB2 for LUW)コマンドが機能するはずです。

CREATE INDEX IX_ACCOUNTNOTES_DATE_TYPE 
ON CPMTD.ACCOUNT_NS (
     ACCOUNT_ID
    ,CREATED_DATE
    ,NOTE_TYPE
)

コマンドを正確にコピーして貼り付けた場合、最後に余分な"ものがあった可能性があります。

さらに、DB2 はすべてのインデックスを非クラスター化として作成します。CLUSTER例外として、次のオプションを使用して新しいインデックスを定義しない限り、最初に定義されたインデックスがクラスタリング インデックスになります。

CREATE INDEX IX_ACCOUNTNOTES_DATE_TYPE 
ON CPMTD.ACCOUNT_NS (
     ACCOUNT_ID
    ,CREATED_DATE
    ,NOTE_TYPE
)
CLUSTER
于 2013-02-08T19:21:49.747 に答える