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 【角色名】;

     

     

     

  • 相关阅读:
    iot 表索引dump《2》
    heap表和iot表排序规则不同
    Cannot complete the install because one or more required items could not be found.
    iot表输出按主键列排序,heap表不是
    iot 表主键存放所有数据,且按数据插入顺序排序
    iot表和heap表排序规则不同
    org.eclipse.graphiti.ui.editor.DiagramEditorInput.
    Oracle 排序规则
    perl 异步超时 打印错误
    14.6.3 Grouping DML Operations with Transactions 组DML操作
  • 原文地址:https://www.cnblogs.com/maokun/p/7247474.html
Copyright © 2011-2022 走看看