Oracle入门(二)之SQL

一、SQL组成

SQL的组成 核心SQL主要有四个部分:

1、数据定义语言即SQL DDL(Data Definition Language ),用于定义 SQL模式、基本表、视图、索引等结构。

CREATE、ALTER、DROP、REVOKE、GRANT

 

2、数据操纵语言 即SQL DML(Data Manipulation Language)。

数据操纵分成数据查询和数据更新两类。其中数据更新又分成插入、删除和修改三种操作。

SELECT、INSERT、UPDATE、DELETE

 

3、数据控制语言DCL(Data Control Language) 这类语言用于实现用户权限授予或者取消,保证数据安全性。

    主要包括Grant 、 Revoke 、 Deny 、 Commit 、 Savepoint 、 Rollback等。

 

4、嵌入式SQL语言的使用规定 这一部分内容涉及到SQL语句嵌入在宿主语言程 序中的规则。

    VC、VB、Delphi、Java等

 

二、Oracle主要数据类型

Character 数据类型

Number 数据类型

Date 数据类型

Raw 和 Long Raw 数据类型

LOB 数据类型有Blob、Clob、Nclob

 

三、create

1、创建用户 

   create user 【用户名】 identified by  【密码】 [default tablespace 【表空间名】quota 100m on 【表空间名】 password expire] 

   []里面的内容可以省略,如果省略,默认表空间为本用户的表空间,不分配表空间,密码不过期

2、创建表

   create table 【表名】(

   【属性】  【类型】 [ 【约束】]

    ...

  )

[default tablespace 【表空间】]          --默认表空间

[temporary tablespace 【表空间】]     --临时表空间

[

  PCTUSED 10   --使用空间,删除数据小于该容量进行插入操作

  PCTFREE 10   --空闲空间

  INITRANS 1         --块事务表大小,默认值为2

  MAXTRANS 100  --块事务表最大值

  STORAGE (    --存储空间设置

     INITIAL 1048576    --初始分配

     NEXT 1048576      --下次分配

     PCTINCREASE 0   --分配扩长比,0为最合适的,否则每次分配都是前一次的(100+x)%倍分配

     MINEXTENTS 1     

     MAXEXTENTS 512

     FREELISTS 1

     FREELIST

     GROUPS 1

     Buffer_pool Recycle

]

参数名称 缺省值 最小值 最大值 说明
INITIAL 5(数据块) 2(数据块) 操作系统限定 分配给Segment的第一个Extent的大小,以字节为单位,这个参数不能在alter语句中改变,如果指定的值小于最小值,则按最小值创建。
NEXT 5(数据块) 1(数据块) 操作系统限定 第二个Extent的大小等于NEXT的初值,以后的NEXT值=前一NEXT大小乘以(1+PCTINCREASE/100),如果指定的值小于最小值,则按最小值创建。
如果在alter语句中改变NEXT的值,则下一个分配的Extent将具有指定的大小,而不管上一次分配的Extent大小和PCTINCREASE参数值。
MINEXTENTS 1(Extent)
回滚段为2个Extent
1(Extent)
回滚段为2个Extent
操作系统限定 Segment第一次创建时分配的Extent数量
MAXEXTENTS 根据数据块大小而定 1(Extent)
回滚段为2个Extent
无限制 随着Segment中数据量的增长,最多可分配的Extent数量
PCTINCREASE 50%


(Oracle816中为0%)
0% 操作系统限定 指定第三个及其后的Extent相对于上一个Extent所增加的百分比,
如果PCTINCREASE为0,则Segment中所有新增加的Extent的大小都相同,等于NEXT的值,
如果PCTINCREASE大于0,则每次计算NEXT的值(用上面的公式),
PCTINCREASE不能为负数。
创建回滚段时,不可指定此参数,回滚段中此参数固定为0。
OPTIMAL ---- 不能小于回滚段初始分配空间 操作系统限定 仅与回滚段有关,当回滚段因为增长、扩展而超过此参数的设定范围时,Oracle系统会根据情况动态地重新分配Extents,试图收回多分配的Extent。
FREELISTS 1 1 数据块大小限制 只能在CREATE TABLE、CLUSTER、INDEX中指定FREELISTS和FREELIST GROUPS参数。
模式对象中每一个自由列表组中自由列表的数量
FREELIST GROUPS 1 1 取决于Oracle并行实例的数量 用户创建的数据库对象的自由列表组的数量,只有用OPS并行服务器选项时才使用这一参数,一个实例对应一个组。
BUFFER_POOL ---- ---- ---- 给模式对象定义缺省缓冲池(高速缓存),该对象的所有块都存储在指定的高速缓存中,对于表空间或回滚段无效。

3、创建角色

    create role 【角色名】;

 

 

 

posted @ 2017-07-27 21:26  茅坤宝骏氹  阅读(187)  评论(0编辑  收藏  举报