- 这里有你想不到的惊喜
Oracle是关系型数据库
-
结构化查询语言
,可以让我们访问和处理数据库。 -
对于建表,很多人可能都会说,很简单
-
以下就是建表的语句,其他字段随便改改就好了
-
但是当你的表到达一定的数量级,上千万过亿了呢,那么建表的每个细节都要有绝对的技术把握和支持
CREATE TABLE SD_GSS --表名称:SD_GSS
(
YEAR VARCHAR2(400 BYTE), --这个结构很简单,字段名:YEAR ,VARCHAR2字段类型,字节大小:400 BYTE
NO VARCHAR2(400 BYTE) --字段名:NO ,VARCHAR2字段类型,字节大小:400 BYTE
)
- 看一个表
YES_GSS
相对完整的建表结构化语句,如果你有兴趣,我会一点点解读这个看起来很变态的SQL - 一点点的把它读懂,慢慢的理解透
---像表名,字段类型属性,上面有介绍,类似,这个就不说了
DROP TABLE YES_GSS CASCADE CONSTRAINTS; --这句意思把表从数据库删除,但是不影响对象在数据库中的存储内容,设计数据库: ORA-02449 ①
CREATE TABLE YES_GSS
(
NAME_SELF VARCHAR2(50 BYTE),
YEAR_RE VARCHAR2(50 BYTE),
HIGH_TO VARCHAR2(50 BYTE),
TALL_LAST VARCHAR2(20 BYTE),
MONEY_DATE DATE DEFAULT SYSDATE, --是默认值为当前插入数据系统时间
REMARK VARCHAR2(10 BYTE) DEFAULT 'Y' --默认值为字符'Y'
HOME_ADDRESS VARCHAR2(10 BYTE),
DULL VARCHAR2(100 BYTE) --实际中这些字段有静态存储,静态和动态SQL ②
)
TABLESPACE GSSD --当数据库中表很多,并且数据量很大时,会导致数据库性能严重下降,有必要将一些大的表放到不同的表空间中
RESULT_CACHE (MODE DEFAULT) --在11.2中,Oracle推出了表级的RESULT_CACHE,当设置表的RESULT_CACHE后,这个表的所有查询都被放到RESULT_CACHE缓冲区中
PCTUSED 0 --- 是指当块里的数据低于多少百分比时,又可以重新被insert
PCTFREE 10 ---为一个块保留的空间百分比,表示数据块在什么情况下可以被insert
INITRANS 1 ---INITRANS表示块首部中事务表的初始大小,该值影响着对表的事务并发访问
MAXTRANS 255 ---MAXTRANS表示事务表的最大值
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
CREATE INDEX INDEX01_YES_GSS ON YES_GSS ---以下为此表建立的4个索引,可以看到索引名称命名很规范,方便管理
(NAME_SELF)
LOGGING
TABLESPACE GSSD
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE ( --索引块查找
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL;
CREATE INDEX INDEX02_YES_GSS ON JOAN.YES_GSS
(MONEY_DATE)
LOGGING
TABLESPACE GSSD
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL;
CREATE INDEX INDEX03_YES_GSS ON YES_GSS
(HOME_ADDRESS)
LOGGING
TABLESPACE GSSD
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL;
CREATE INDEX INDEX04_YES_GSS ON YES_GSS
(DULL)
LOGGING
TABLESPACE GSSD
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL;
-
上面解读:粗略了写了一些注释,希望能对你有所帮助,有哪里不对,敬请提出,如果感觉高大上,也很荣幸。
-
接下来,有空会介绍,索引的一些知识,如什么情况下设置索引,聚合索引。和锁表情况,锁表原理和机制,如何解锁等等。
感激
remark
- 万变不离其宗!一点点积累,慢慢去突破,年轻,喜欢就扑上去。深耕不缀,戒骄戒躁。
关于作者
var runood= {
nickName : "墨客码",
site : "http://www.cnblogs.com/gss0525/"
desc : "本菜鸟做.net后台开发,热衷分享技术,认为不错的,给个赞,不足还望提出宝贵经验,谢谢"
}