我正在运行“Oracle数据库10g速成版版本10.2.0.1.0 – 生产”,并试图熟悉它。 我创build了一个表空间并将其设置为在线。 我如何确保下一个create table语句使用这个表空间? 是专门为此存储吗? Oracle会自动搞清楚吗?
谢谢
你有几个选项可用。 简单的一个:
CREATE TABLE your_table (field_a CHAR(1), ... ) TABLESPACE your_tablespace;
这将在“your_tablespace”表空间中创build表“your_table”。
你也可以创build一个用户,让他使用你的表空间作为默认的表空间,这样他的所有对象(不仅仅是表!)将被创build在这个表空间中:
CREATE USER your_user IDENTIFIED BY "your_password" DEFAULT TABLESPACE your_tablespace TEMPORARY TABLESPACE temp; GRANT CONNECT to your_user;
您也可以修改现有的用户来更改默认的表空间:
ALTER USER your_user DEFAULT TABLESPACE your_tablespace;
从那一刻起,所有NEW对象都将在your_tablesapce中创build(以前现有的对象不会自动移动!)
要将表从一个表空间移动到另一个表空间:
ALTER TABLE your_table MOVE TABLESPACE your_tablespace;
想想这就是所有…