ARTICLE表结构详解
=================================ARTICLE表结构===============开始===================
CREATE TABLE ARTICLE
(
ID INTEGER NOT NULL,
HOST INTEGER,
SUBJECT INTEGER,
URL VARCHAR2(255 BYTE),
URLTITLE VARCHAR2(255 BYTE),
LASTUPDATED DATE,
TITLE VARCHAR2(255 BYTE),
TYPE INTEGER,
STATUS INTEGER,
CONTENT BLOB DEFAULT empty_blob(),
ATTRIBUTE INTEGER,
SYNC INTEGER DEFAULT 0,
F_TYPE_ID INTEGER,
SIMILARITY FLOAT(126),
AUTOSCORE INTEGER DEFAULT 0
)
TABLESPACE WEBMON
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 11440K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
LOB (CONTENT) STORE AS
( TABLESPACE WEBMON
ENABLE STORAGE IN ROW
CHUNK 8192
PCTVERSION 10
NOCACHE
STORAGE (
INITIAL 40K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
)
NOCACHE
NOPARALLEL
MONITORING;
CREATE INDEX INDEX_ARTICLE_SIMILARITY ON ARTICLE
(FLOOR("SIMILARITY"))
LOGGING
TABLESPACE WEBMON
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 4M
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
CREATE INDEX ARTICLE_SSL ON ARTICLE
(SUBJECT, STATUS, LASTUPDATED)
LOGGING
TABLESPACE WEBMON
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 4M
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
CREATE INDEX INDEX_TYPE_TYPEID_LASTUP ON ARTICLE
(TYPE, F_TYPE_ID, LASTUPDATED)
LOGGING
TABLESPACE WEBMON
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
CREATE INDEX IDX_ARTICLE_UPDATE ON ARTICLE
(LASTUPDATED, HOST, TYPE)
LOGGING
TABLESPACE WEBMON
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
CREATE PUBLIC SYNONYM ARTICLE FOR ARTICLE;
ALTER TABLE ARTICLE ADD (
PRIMARY KEY
(ID)
USING INDEX
TABLESPACE WEBMON
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 160K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
));
=================================ARTICLE表结构===============结束===================
--------------------------------------------------------------------------------
1.CREATE TABLE ARTICLE()
说明:建立ARTICLE表
2.TABLESPACE WEBMON
说明:说明ARTICLE存在于WEBMON表空间中
建立Tablespace
create tablespace mydb datafile 'oracle/oradata/ora/mydb.dbf' size 10M online;
建立表空间
CREATE TABLESPACE WEBMON DATAFILE
'D:/ORACLE/PRODUCT/10.1.0/ORADATA/******/WEBMON01.DBF' SIZE 100M AUTOEXTEND ON NEXT 20M MAXSIZE 200M,
'D:/ORACLE/PRODUCT/10.1.0/ORADATA/******/WEBMON02.DBF' SIZE 100M AUTOEXTEND ON NEXT 20M MAXSIZE 200M,
'D:/ORACLE/PRODUCT/10.1.0/ORADATA/******/WEBMON03.DBF' SIZE 100M AUTOEXTEND ON NEXT 20M MAXSIZE 200M
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT MANUAL
FLASHBACK ON;
建立用户
create user rmrbana identified by rmrbana default tablespace webmon temporary tablespace temp;
grant dba,connect, create session, resource to rmrbana;
PCTUSED
PCTFREE
INITRANS——>支持并行事务的数量(INITRANS=几,就可以支持相应个数的事务,因为这个参数的设置对应于物理块的,设置的越多块头的空间就占用越多(当然就只能存更少的数据)
另外这个属性是自增长的,可以增长到MAXTRANS,所以没必要我们设置太大。我还是那句话,要把存储参数设置在表空间级!initrans 一般设置为1就可以了,不过也可以根据你的具体环境来增大它的设置,但要记住每当一个事务获得initrans所分配的一个事务槽时,该事务槽就会从PCTFREE借走一定大小的空间,如果其他的存储参数没有配置得当的话,很容易出现行链或行迁移,还有可能造成块级的空间碎片,总之慎用)
MAXTRANS——>INITRANS根据MAXTRANS的值来获取自增。
3.CREATE INDEX INDEX_TYPE_TYPEID_LASTUP ON ARTICLE
(TYPE, F_TYPE_ID, LASTUPDATED)
说明:为ARTICLE表的TYPE、F_TYPE_ID、LASTUPDATED三个字段建立索引
4.CREATE PUBLIC SYNONYM ARTICLE FOR ARTICLE
说明:从字面上理解就是别名的意思,和试图的功能类似。就是一种映射关系。
a.创建同义词语句:
create public synonym table_name for user.table_name;
其中第一个user_table和第二个user_table可以不一样。
此外如果要创建一个远程的数据库上的某张表的同义词,需要先创建一个Database Link(数据库连接)来扩展访问,然后在使用如下语句创建数据库同义词:create synonym table_name for table_name@DB_Link;
当然,你可能需要在user用户中给当前用户(user2)授权: grant select/delete/update on user2
b.删除同义词:
drop public synonym table_name;
c.查看所有同义词:
select * from dba_synonyms
同义词拥有如下好处:节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;扩展的数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;同义词可以创建在不同一个数据库服务器上,通过网络实现连接。
5.ALTER TABLE ARTICLE ADD
说明:ALTER TABLE ARTICLE ADD (PRIMARY KEY(ID) USING INDEX)
--------------------------------------------------------------------------------
ORACLE中用Create Table时,Storage中参数的含义
参数名称 | 缺省值 | 最小值 | 最大值 | 说明 |
INITIAL | 5(数据块) | 2(数据块) | 操作系统限定 | 分配给Segment的第一个Extent的大小,以字节为单位,这个参数不能在alter语句中改变,如果指定的值小于最小值,则按最小值创建。 |
NEXT | 5(数据块) | 1(数据块) | 操作系统限定 | 第二个Extent的大小等于NEXT的初值,以后的NEXT值=前一NEXT大小乘以(1+PCTINCREASE/100),如果指定的值小于最小值,则按最小值创建。 |
MINEXTENTS | 1(Extent) | 1(Extent) | 操作系统限定 | Segment第一次创建时分配的Extent数量 |
MAXEXTENTS | 根据数据块大小而定 | 1(Extent) | 无限制 | 随着Segment中数据量的增长,最多可分配的Extent数量 |
PCTINCREASE | 50% | 0% | 操作系统限定 | 指定第三个及其后的Extent相对于上一个Extent所增加的百分比, |
OPTIMAL | ---- | 不能小于回滚段初始分配空间 | 操作系统限定 | 仅与回滚段有关,当回滚段因为增长、扩展而超过此参数的设定范围时,Oracle系统会根据情况动态地重新分配Extents,试图收回多分配的Extent。 |
FREELISTS | 1 | 1 | 数据块大小限制 | 只能在CREATE TABLE、CLUSTER、INDEX中指定FREELISTS和FREELIST GROUPS参数。 |
FREELIST GROUPS | 1 | 1 | 取决于Oracle并行实例的数量 | 用户创建的数据库对象的自由列表组的数量,只有用OPS并行服务器选项时才使用这一参数,一个实例对应一个组。 |
BUFFER_POOL | ---- | ---- | ---- | 给模式对象定义缺省缓冲池(高速缓存),该对象的所有块都存储在指定的高速缓存中,对于表空间或回滚段无效。 |