Oracle建表实例
建表一般来说是个挺简单的事情,但是Oracle的建表语句有很多可选的参数,有些我们可能平时不太用,用的时候又不知道怎么用,这里就写一个较完整的建表的例子:
CREATE TABLE banping
(id NUMBER(5)
CONSTRAINT banping_id_pk PRIMARY KEY,
last_name VARCHAR2(10)
CONSTRAINT banping_last_name_nn NOT NULL,
first_name VARCHAR2(10) NOT NULL UNIQUE,
userid VARCHAR2(8)
CONSTRAINT banping_userid_uk UNIQUE,
start_date DATE DEFAULT SYSDATE,
title VARCHAR2(10),
dept_id NUMBER(7)
CONSTRAINT banping_dept_id_fk REFERENCES dept(id),
salary NUMBER(11,2),
user_type VARCHAR2(4)
CONSTRAINT banping_user_type_ck CHECK
(user_type IN('IN','OUT')),
CONSTRAINT banping_uk_title UNIQUE (title,salary)
)
INITRANS 1 MAXTRANS 255
PCTFREE 20 PCTUSED 50
STORAGE( INITIAL 1024K NEXT 1024K PCTINCREASE 0 MINEXTENTS 1 MAXEXTENTS 5)
TABLESPACE data
解释说明如下:
语法
CREATE TABLE [schema.]table
(column datatype [, column datatype] … )
[TABLESPACE tablespace]
[PCTFREE integer]
[PCTUSED integer]
[INITRANS integer]
[MAXTRANS integer]
[STORAGE storage-clause]
[LOGGING | NOLOGGING]
[CACHE | NOCACHE] ];
Schema:表的所有者
Table:表名
Column:字段名
Datatype:字段的数据类型
Tablespace:表所在的表空间
Pctfree:为了行长度增长而在每个块中保留的空间的量(以占整个空间减去块头部后所剩余空间的百分比形式表示),当剩余空间不足pctfree时,不再向该块中增加新行。
Pctused:在块剩余空间不足pctfree后,块已使用空间百分比必须小于pctused后,才能向该块中增加新行。
INITRANS:在块中预先分配的事务项数,缺省值为1
MAXTRANS:限定可以分配给每个块的最大事务项数,缺省值为255
STORAGE:标识决定如何将区分配给表的存储子句
LOGGING:指定表的创建将记录到重做日志文件中。它还指定所有针对该表的后续操作都将被记录下来。这是缺省设置。
NOLOGGING:指定表的创建将不被记录到重做日志文件中。
CACHE:指定即使在执行全表扫描时,为该表检索的块也将放置在缓冲区高速缓存的LRU列表最近使用的一端。
NOCACHE:指定在执行全表扫描时,为该表检索的块将放置在缓冲区高速缓存的LRU列表最近未使用的一端。
STORAGE子句:
INITIAL:初始区的大小
NEXT:下一个区的大小
PCTINCREASE:以后每个区空间增长的百分比
MINEXTENTS:段中初始区的数量
MAXEXTENTS:最大能扩展的区数
最新文章
- 浅析tomcat nio 配置
- springmvc之DispatcherServlet
- 通信原理实践(五)——2PSK 与2DPSK 通信系统
- Google Analytics与百度统计原理
- 配置Excel的DCOM权限
- GitHub的5人骨干小组:早期初创公司该如何招到正确的人
- Java 中 MongoDB 使用指南
- C++&;&;Mysql&;&;codeblocks
- addEventListener与removeEventListener
- App免费推广途径概要
- apigateway-kong(一)简介及部署
- 将一个html文件引入另一个html文件的div中
- python字典和条件控制
- ERP完善合同起草(二十八)
- Python3+ssl实现加密通信
- JAVA引用的种类
- PHP+mysql系统报错:PHP message: PHP Warning: Unknown: Failed to write session data (files)
- java appium客户端 6.1.0android长按及滑动变更
- 团队博客-第六周:Alpha阶段项目复审(科利尔拉弗队)
- jenkins学习之centos6.9下安装
热门文章
- NopCommerce架构分析之参考资料
- Handler一定要在主线程实例化吗?new Handler()和new Handler(Looper.getMainLooper())的区别?
- 使用C语言实现二维,三维绘图算法(3)-简单的二维分形
- python def说明
- Java 核心技术-集合-集合框架
- CCF 认证
- Android字符串相关类 - CharSequence
- 使用SVN服务器管理源码
- Codeforces Round #225 (Div. 2)
- Java网络编程(TCP服务端)