2014-02-06 8 views
0

Я использовал для создания составной index для моей таблицы Oracle со следующим скриптом.Создание составного индекса в DB2

CREATE INDEX index_name ON my_table (column1,column2,column3) TABLESPACE tablespace_name;

Когда я попробовал то же самое в DB2, есть некоторые ошибки в tablespace, и я попытался использовать следующий сценарий просто,

CREATE INDEX index_name ON my_table (column1,column2,column3);

Является ли это хорошо в DB2? Поскольку я новичок в DB2 и не нашел синтаксиса при поиске составного индекса в DB2, не уверен в этом. Нужен совет.

ответ

1

Для документации CREATE INDEX, вы можете проверить InfoCenter: http://pic.dhe.ibm.com/infocenter/db2luw/v10r5/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0000919.html

В DB2 CREATE INDEX предложение вы указали правильно. Помните, что в DB2 вы не предоставляете табличное пространство при создании индекса. Табличное для индексов задается при создании таблицы

CREATE TABLE XX 
(
... 
) 
IN ts_table 
INDEX IN ts_indexes 

Для получения дополнительных сведений о создании таблицы, пожалуйста, посмотрите на это: http://pic.dhe.ibm.com/infocenter/db2luw/v10r5/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0000927.html

+0

Это платформа конкретный ответ для DB2 LUW. Для тех, у кого есть DB2, я вижу http://pic.dhe.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Fdb2%2Frbafzintro.htm – WarrenT

+1

@WarrenT мы должны спросить платформу, пометьте вопросы. Я обнаружил, что есть тег под названием db2400, я думаю, его следует называть db2i. Кроме того, я не видел никаких тегов для DB2 для zOS. – AngocA

+0

Также обратите внимание, что вы * можете * указать табличное пространство в операторе 'CREATE INDEX', если вы используете таблицы разделенных разделов. Некоторые отметили, что вы можете создать таблицу с одним разделом диапазона, чтобы вы могли создавать каждый индекс в отдельном табличном пространстве. –

Смежные вопросы