Oracle第二课

一、SQL

  • 结构化查询语言

  • 作用:管理关系型数据库

  • 分类:

    • DDL(Data Definition Language):数据定义语言

    • DML(Data Manipulation Language):数据操纵语言

    • DQL(Data Query Language):数据查询语言

    • TCL(Transaction Control Language):事物控制语言

    • DCL (Data Control Language):数据控制语言

二、DDL(数据定义语言)

  • 关键词:create(创建),alter(修改),drop(销毁)

  • 表空间

    • 定义:表空间是存储数据的地方,存储数据库对象的地方,在磁盘上对应有数据文件

    • Oracle中默认有一个系统表空间和临时表空间,如果创建用户不指定用户的表空间,则默认把用户创建在系统表空间,系统表空间类似于windows的C盘,如果把所有软件安装在C盘是不合理的,Oracle中把用户分配在系统表空间也是不合理的,最理想的是一个用户一个表空间,在删除用户时可以删除表空间,这样管理比较好。

    • 表空间是虚拟的,可以无限大,数据文件是存储信息的载体

    • 临时表空间:数据库操作时临时使用,如排序,去重复,统计等大数据时使用,小规模可以在内存中完成

    • 操作:

      • 分配用户的创建表空间的权限

        grant create tablespace to user_test;
      • 创建表空间

        create tablespace sp1 datafile 'sp1.dbf' size 1m;
      • 表空间的位置

        D:\app\96093\product\11.2.0\dbhome_1\database
      • 分配表空间扩容权限

        grant alter database to user_test;
      • 修改表空间大小

         alter database datafile 'sp1.dbf' resize 2m;
      • 分配删除表空间权限

        grant drop tablespace to user_test;
      • 删除表空间

        drop tablespace sp1 including contents and datafiles;
        • 表空间要与物理文件关联,但是表空间是一个逻辑概念,删除它时,不会主动删除关联的文件。

        • 不要轻易手动删除数据文件,可能会导致数据库报错,不能正常服务。

      • 增加数据文件权限

        grant alter tablespace to user_test;
      • 增加数据文件

        alter tablespace sp1 add datafile 'sp1_2.dbf' size 1m;
        • 表空间是逻辑存在的,可以挂多个数据文件
      • 授予管理员权限

        grant dba to user_test;
      • 创建临时表空间

        create temporary tablespace tsp1 tempfile 'tsp1.dbf' size 2m;
      • 删除临时表空间

        drop tablespace tsp1 including contents and datafiles;
      • 创建用户时指定表空间和临时表空间

        create user user_test identified by user_test default tablespace sp1 temporary tablespace tsp1;
    • 数据类型

      number:数字类型;integer:整数;char:定长字符串;
      varchar:变长字符串,最大4000;date:日期类型;
      TIMESTAMP:时间戳;blob:二进制数据;
      clob:放大量的字符数据;bfile:二进制文件;
      • number:可以指定精度,number(5,2):总共5位数,整数位不能超过3位,小数位不能超过2位

      • 如果p1和p2都是正数,那么整数长度是p1-p2,数字总长是p1

      • 如果p1是正数,p2是负数,那么整数长度是p1-p2,也就是说没有小数部分,并且整数的后p2长度的数字变为零。

      • number(5,2),总长是5,整数是5-2

      • number(5,-2),总长是5-(-2)=7,并且后两位变为零

      • number总长是38位,如果不指定参数的话。

三、作业

  1. sysdba账号下新建表空间sp_test,作为数据表空间

  2. sysdba账号下新建临时表空间tsp_test

  3. drop user user_test;

  4. 新建用户user_test并指定它的数据表空间和临时表空间

  5. 删除用户user_test

  6. 删除sp_test,tsp_test

posted @ 2021-01-14 11:46  若你  阅读(63)  评论(0编辑  收藏  举报