zoukankan      html  css  js  c++  java
  • DDL(Data Definition Language)数据定义语言基础

    数据定义语言DDL(Data Definition Language)是SQL语言的三个主要组成部分之一(另外两个分别是数据操作语言DML(Data Mainpulation Language)和数据控制语言(Data Control Language)).

    1:创建用户Create User

       创建用户使用如下的语法

       Create user 用户名 identified by 密码 [default tablespace 缺省表空间] [temporary tablespace 临时表空间].如果不想用系统的原来的表空间可以按照如下的方式自己创建临时表空间和缺省表空间.

    创建数据表空间:

    create tablespace tablespace_name      //创建表空间的名字(逻辑)

    datafile '表空间的地址:xxx.dbf'                            //对应的数据文件(这个创建后是可以在磁盘上看的到的文件)

    size 50m                                                //初始大小50M

    autoextend on next 50m                       //在初始存储容量填满后可以自行扩展,一次扩展50M

    maxsize  200m                                     //限制最大空间200M

    extent management local                   //存储区管理方法用本地管理

    创建临时表空间:

    create temporary tablespace                            //创建临时表空间的时候要用到temporary关键子

    test1_temp tempfile '表空间的地址xxx.dbf'       //注意这里的tempfile关键字

    size 100M

    autoextend on next 50M

    maxsize 300M

    extent management local;

    有了上面建立的数据表空间和临时表空间就可以为指定创建的数据表空间和临时表空间

    create user U1 identified by 1234

    default tablespace test1_data

    temporary tablespace test1_temp;

    2:给用户赋予链接的权利和建表的权利.

    这里有两种方式:

    2.1 Grant connect,resource to 用户名

          其中connect是链接权,resource表示的是可以使用创建用户的时候指定的数据表空间和临时表空间

          撤销赋予的权利:revoke  权限 from  用户名

    2.2也可以使用grant赋予其链接的权力,然后再应用quota赋予其对指定的表空间的使用权

        grant connect to 用户名                                      //赋予用户链接的权利

       alter user 用户名 quota 100M  on 表空间1           //给用户100M的表空间

       alter user 用户名 quota unlimited on 表空间1       //让用户能够随意的使用表空间1

    3:建立表结构

     基本的语法:

    create table <表名>(<定义列>[{,<列定义>,<表约束>}])

    create table Student (

           sno char(10) primary   key,

           sname varchar2(20) not null,

           sage    smallint,

           ssex     char(5)

    );

    4:复制基本表

    4.1:复制表结构

    create table T1 as select*from Student where 1=2;这个语法只复制表结构不复制表里面的数据

    4.2:复制表

    create table T2 as select*from Student;应用这种方法会连通表中的数据一并复制;

    5:修改表的属性

    alter table student add native_place var2char(30);为表结构增加籍贯项目

    alter table student modify native_place char(20);   修改已经有的籍贯项目

    alter table student Drop column native_place;        删除增减的列

    6:删除表

    6.1删除表结构和表中的数据

    Drop Table 表名称

    6.2删除表结构和与该表相关的外码

    Drop Table 表名称 Cascade Constraints

    上述的两种方法一旦删除将不能恢复.

  • 相关阅读:
    html 之input标签height设置问题
    jquery 练习笔记
    JavaScript
    css记录
    python 反射器
    python 之 前端初识 html
    [mysql]修改
    [mysql]约束
    [mysql]select
    python_exercise_能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径
  • 原文地址:https://www.cnblogs.com/ShanShi012/p/4833691.html
Copyright © 2011-2022 走看看