zoukankan      html  css  js  c++  java
  • 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 【角色名】;

     

     

     

  • 相关阅读:
    2018-6-2_《JS操作数组(纯洁方法)》
    Centos7 xfs分区格式化挂载
    centos 常用命令集锦
    docker1.12在cento7里的组建swarm (一)
    centos7线程、文件打开数等调优日志(非优化案例、仅仅是个个人记录、为把相关配置文件记录一下)
    Centos7.2 新镜像、系统到手 更新清理 并且安装docker1.2以后版本 目前内容适合docker 1.7.x ce(社区版)
    程序员新手 0年份等级 指导(一) 开发人员IT架构总览
    docker 土法制作zookeeper镜像 并且搭建集群 基于centos7.2
    centos 删除多余的内核启动项
    docker1.12在cento7里的组件swarm (二)
  • 原文地址:https://www.cnblogs.com/maokun/p/7247474.html
Copyright © 2011-2022 走看看