CREATE INDEX æ–‡

CREATE INDEXæ–‡ã?«ã‚ˆã‚Šè¡¨ã?«ç´¢å¼•を作æˆ?ã?§ã??ã?¾ã?™ã€‚ 索引ã?¯è¡¨ã?®ã?²ã?¨ã?¤ä»¥ä¸Šã?®åˆ—ã?«ä½œæˆ?ã?§ã??ã?¾ã?™ã€‚

æ§‹æ–‡

CREATE [UNIQUE] INDEX 索引å??
ON 表å?? ( å?˜ç´”列å?? [ ASC | DESC ]
    [ , å?˜ç´”列å?? [ ASC | DESC ]] * )

The Derby��索引��能�列�最大数�16��。

索引å??ã?¯128文字を超ã?ˆã?¦ã?¯ã?ªã‚Šã?¾ã?›ã‚“。

��列��一�CREATE INDEX文�2�以上�����り��ん。��異�る索引��れ����列をも�������ん。

Derbyã?¯ç´¢å¼•を使ã?£ã?¦ã€?情報ã?®æ“?作を行ã?†æ–‡ã?®åŠ¹çŽ‡ã‚’å?‘上ã?—ã?¾ã?™ã€‚(Derbyã?®ãƒ?ューニングをå?‚ç…§ã?—ã?¦ã??ã? ã?•ã?„。)。 ã?•らã?«UNIQUEã?®ç´¢å¼•ã?«ã‚ˆã‚Šã€?情報ã?Œæ•´å?ˆæ€§ã‚’ä¿?ã?£ã?¦ã?„ã‚‹ã?‹æ¤œè¨¼ã?™ã‚‹äº‹ã?Œã?§ã??ã?¾ã?™ã€‚

索引å??ã?¯ã‚¹ã‚­ãƒ¼ãƒžã?«ã?¦ä¸€æ„?ã?§ã?™ã€‚(データベースシステムã?«ã‚ˆã?£ã?¦ã?¯ã€?å?Œã?˜ã‚¹ã‚­ãƒ¼ãƒžã?®ç•°ã?ªã‚‹ãƒ†ãƒ¼ãƒ–ルã?«å?Œã?˜å??å‰?ã?®ç´¢å¼•ã‚’æŒ?ã?¤ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã?Œã€?Derbyã?¯é?•ã?„ã?¾ã?™ã€‚) 索引ã?¨è¡¨ã?®ç‰‡æ–¹ã?«ã‚¹ã‚­ãƒ¼ãƒžå??ã?Œæ˜Žç¤ºã?•れã?¦ã€?ã‚‚ã?†ç‰‡æ–¹ã?«æ˜Žç¤ºã?•れã?ªã?‹ã?£ã?Ÿå ´å?ˆã€?索引ã?¨è¡¨ã?¯å?Œã?˜ã‚¹ã‚­ãƒ¼ãƒžã?«ã?‚ã‚‹ã‚‚ã?®ã?¨ã?•れã?¾ã?™ã€‚索引ã?¨è¡¨ã?®ä¸¡æ–¹ã?«ã‚¹ã‚­ãƒ¼ãƒžå??ã?Œæ˜Žç¤ºã?•れã?¦ã€?ã??れã?žã‚Œã?®ã‚¹ã‚­ãƒ¼ãƒžå??ã?Œç•°ã?ªã?£ã?¦ã?„ã?Ÿå ´å?ˆã€?例外ã?Œç™ºç”Ÿã?—ã?¾ã?™ã€‚表ã?«ã‚‚索引ã?«ã‚‚スキーマå??ã?Œæ˜Žç¤ºã?•れã?ªã?‹ã?£ã?Ÿå ´å?ˆã€?ç?¾åœ¨ã?®ã‚¹ã‚­ãƒ¼ãƒžã?Œä½¿ã‚?れã?¾ã?™ã€‚

既定ã?§Derbyã?¯ç´¢å¼•ã‚’ã??れã?žã‚Œã?®åˆ—ã?«å¯¾ã?—ã?¦æ˜‡é †ã?§ä½œæˆ?ã?—ã?¾ã?™ã€‚列å??ã?®å¾Œã?«ASCã?¨æ›¸ã?„ã?¦ã‚‚既定ã?®æŒ¯ã‚‹èˆžã?„ã?¨å?Œã?˜ã‚ˆã?†ã?«å‹•作ã?—ã?¾ã?™ã€‚ 列å??ã?®å¾Œã?«DESCã?¨æ›¸ã??ã?¨ã€?索引を作るã?¨ã??ã?«Derbyã?¯ã??ã?®åˆ—ã‚’é™?é †ã?§æ‰±ã?„ã?¾ã?™ã€‚ é™?順を列ã?«æŒ‡å®šã?™ã‚‹ã?“ã?¨ã?§ã€?昇順ã?¨é™?é †ã?Œæ··ã?–ã?£ã?Ÿä¸¦ã?³é †ã?‚ã‚‹ã?„ã?¯é™?é †ã?®å•?ã?„å?ˆã‚?ã?›ã‚„ã€?索引ã?®ã?‚る列ã?®æœ€å¤§å€¤ã‚„最å°?値をé?¸æŠžã?™ã‚‹å•?ã?„å?ˆã‚?ã?›ã?Œã€?効率よã??実行ã?•れるã?“ã?¨ã‚’期待ã?§ã??ã?¾ã?™ã€‚

é™?定ã?•れã?Ÿç´¢å¼•å??を指定ã?™ã‚‹å ´å?ˆã€?スキーマå??ã?¯SYSã?§å§‹ã?¾ã?£ã?¦ã?¯ã?ªã‚Šã?¾ã?›ã‚“。

索引�制約

一æ„?性・主キー・外部キー制約を作æˆ?ã?™ã‚‹ã?¨ã€?制約をé?©ç”¨ã?¾ã?Ÿã?¯æ”¯æ?´ã?™ã‚‹ç´¢å¼•ã?Œä½œæˆ?ã?•れã?¾ã?™ã€‚(ã?“ã?®ã‚ˆã?†ã?ªç´¢å¼•ã?®ã?“ã?¨ã‚’支æ?´ç´¢å¼•ã?¨å‘¼ã?³ã?¾ã?™ã€‚)ã‚‚ã?—列や列ã?®é›†å?ˆã?«ã€?UNIQUEã?ªã?„ã?—PRIMARY KEYã?®åˆ¶ç´„ã?Œå­˜åœ¨ã?—ã?¦ã?„ã‚‹å ´å?ˆã€?ã??れらã?®åˆ—ã?«ç´¢å¼•を作æˆ?ã?™ã‚‹ã?“ã?¨ã?¯ã?§ã??ã?¾ã?›ã‚“。Derbyã?¯æ—¢ã?«ã??ã?®ç´¢å¼•をシステムã?Œæ±ºã‚?ã?Ÿå??å‰?ã?§ä½œæˆ?ã?—ã?¦ã?„ã?¾ã?™ã€‚制約を支æ?´ã?™ã‚‹ç´¢å¼•ã?«ã‚·ã‚¹ãƒ†ãƒ ã?Œä¸Žã?ˆã?Ÿå??å‰?ã?¯ã€?索引ã?®å??å‰?ã?§ã‚·ã‚¹ãƒ†ãƒ è¡¨ã?«å•?ã?„å?ˆã‚?ã?›ã‚Œã?°ã€?ç°¡å?˜ã?«è¦‹ã?¤ã?‘ã‚‹ã?“ã?¨ã?Œã?§ã??ã‚‹ã?§ã?—ょã?†ã€‚ æ—¢ã?«UNIQUEã?®ç´¢å¼•ã?Œå­˜åœ¨ã?—ã?¦ã?„る列ã?®é›†å?ˆã?«ã€?主キーã?¾ã?Ÿã?¯ä¸€æ„?性制約を追加ã?™ã‚‹ã?¨ã€?å?Œã?˜åˆ—ã?®é›†å?ˆã?«è¤‡æ•°ã?®ç´¢å¼•ã?Œé€ ã‚‰ã‚Œã‚‹ã?“ã?¨ã?¨ã?ªã‚Šã?¾ã?™ã€‚一ã?¤ã?Œã‚‚ã?¨ã‚‚ã?¨ã?‚ã?£ã?ŸUNIQUEã?®åˆ¶ç´„ã?§ã‚‚ã?†ä¸€ã?¤ã?Œã€?制約ã?«ä½µã?›ã?¦ä½œæˆ?ã?•れã?Ÿæ”¯æ?´ç´¢å¼•ã?§ã?™ã€‚

FLIGHTS_PKã?¨ã?„ã?†å??å‰?ã?®åˆ¶ç´„を支æ?´ã?™ã‚‹ç´¢å¼•を見ã?¤ã?‘ã‚‹ã?«ã?¯æ¬¡ã?®ã‚ˆã?†ã?«ã?—ã?¾ã?™ã€‚

SELECT CONGLOMERATENAME FROM SYS.SYSCONGLOMERATES,
SYS.SYSCONSTRAINTS WHERE
SYS.SYSCONGLOMERATES.TABLEID = SYSCONSTRAINTS.TABLEID 
AND CONSTRAINTNAME = 'FLIGHTS_PK'
CREATE INDEX OrigIndex ON Flights(orig_airport);
-- 金é¡?ã?¯é€šå¸¸å¤§ã??ã?ªå€¤ã?‹ã‚‰å°?ã?•ã?ªå€¤ã?®é †ã?§ä¸¦ã?¹ã‚‰ã‚Œã‚‹ã?®ã?§ã€?
-- 索引を�順�作����。
CREATE INDEX PAY_DESC ON SAMP.EMPLOYEE (SALARY);
-- 索引をより大ã??ã?„ページサイズã?§ä½œæˆ?ã?—ã?¾ã?™ã€‚
call SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY('derby.storage.pageSize','8192');
CREATE INDEX IXSALE ON SAMP.SALES (SALES);
call SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY('derby.storage.pageSize',NULL);

ページサイズ�キーサイズ

注: 索引ã?«ã?‚るキーã?®åˆ—サイズã?®å?ˆè¨ˆã?¯ã€?ページサイズã?®å?Šåˆ†ä»¥ä¸‹ã?§ç„¡ã?‘れã?°ã?ªã‚Šã?¾ã?›ã‚“。もã?—既存行ã?«ä½œæˆ?ã?—よã?†ã?¨ã?—ã?¦ã?„る索引ã?®ã‚­ãƒ¼åˆ—ã?®å?ˆè¨ˆã?Œç´¢å¼•ã?®ãƒšãƒ¼ã‚¸ã‚µã‚¤ã‚ºã?®å?Šåˆ†ã‚ˆã‚Šå¤§ã??ã?ªè¡Œã?Œã?‚ã‚‹ã?ªã‚‰ã?°ã€?索引ã?®ä½œæˆ?ã?¯å¤±æ•—ã?—ã?¾ã?™ã€‚ã?“ã?®ã‚¨ãƒ©ãƒ¼ã?¯ç´¢å¼•を作æˆ?ã?—ã?Ÿã?¨ã??ã€?表ã?®æ—¢å­˜è¡Œã?ŒåŸºæº–ã?«å?ˆã‚?ã?ªã?„ã?¨ã??ã?®ã?¿ç™ºç”Ÿã?—ã?¾ã?™ã€‚索引ã?Œä½œæˆ?ã?•れã?Ÿå¾Œã?¯ã€?基準ã?®ã‚­ãƒ¼ã‚µã‚¤ã‚ºã‚’è¶…ã?ˆã?Ÿè¡Œã?®æŒ¿å…¥ã?Œå¤±æ•—ã?—ã?¾ã?™ã€‚

文��存

SELECTã€?INSERTã€?UPDATEã€?UPDATE WHERE CURRENTã€?DELETEã‚„DELETEã?®æº–備済ã?¿æ–‡ã?¯ã€?ã??ã?®è¡¨ã?ŒCREATE INDEXæ–‡ã?®å¯¾è±¡ã?¨ã?ªã?£ã?Ÿå ´å?ˆã€?索引ã?®ä½œæˆ?ã?¨ã?¨ã‚‚ã?«ç„¡åйã?«ã?ªã‚Šã?¾ã?™ã€‚一方表ã?«ã?¤ã?„ã?¦é–‹ã?„ã?¦ã?„るカーソルã?¯å½±éŸ¿ã‚’å?—ã?‘ã?¾ã?›ã‚“。

関連資料
CREATE FUNCTION æ–‡
CREATE PROCEDURE æ–‡
CREATE SCHEMA æ–‡
CREATE SYNONYM æ–‡
CREATE TABLE æ–‡
CREATE TRIGGER æ–‡
CREATE VIEW æ–‡