質問: oracleでテーブルを作成する際に、インデクスの作成先を指定したい。 以下のようにテーブルを作成しようとしてます。 create table test_user.m_user ( id char(4), name varchar2(40) not null), constraint pk_user primary key(id) ); さて、プライマリキーを定義しているので、インデクスが作成されるはずです。 この作成先のテーブルスペースを指定したいのですが、方法が解りません。 create tableの紹介をしているサイトにものっていなくて、途方にくれています・・・。 constraint句を使えばいいのでしょうか?
回答: こんな感じでかけます(スキーマ名はちょっと外しました)。 大文字の箇所を参考にしていただければ。 using indexの後にtablespace句が書けます。 create table m_user( id char(4), name varchar2(40) not null, constraint pk_user primary key(id) using index tablespace indx ) tablespace users; ちなみにその後ろにstorage句も書けます。 最後の行のtablespace句は表の表領域を指定する場合です。 #こういうsqlがわからない場合、マニュアルを見るクセをつけていった方がいいと思いますよ? #マニュアルはotn(oracle technology network)でダウンロードできます。 #(要ユーザ登録(無料))