【问题标题】:create db2 non clustered index创建 db2 非聚集索引
【发布时间】:2013-01-24 13:19:24
【问题描述】:

您能告诉我如何在 DB2 中创建非聚集索引吗?我找不到任何命令。我想在三列上创建一个索引。我试过了:

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。

任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: database indexing db2 non-clustered-index


    【解决方案1】:

    普通的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
    

    【讨论】:

      猜你喜欢
      • 2021-01-14
      • 1970-01-01
      • 2017-05-08
      • 2013-08-07
      • 2017-04-21
      • 1970-01-01
      • 2021-09-23
      • 2013-05-20
      相关资源
      最近更新 更多