数据库语言

  1. 数据定义语言:DDL

    CREATE、DROP、ALTER等语句

    创建数据库
    
    create database 数据库名;
    create database 数据库名 character set 字符集;
    查看数据库
    
    show databases;//查看数据库中的所有的数据库
    show create database 数据库名;//查看指定的数据库
    desc 表名;//查看表结构
    删除数据库
    
    drop database 数据库名称;
    修改数据库
    
    修改表添加列
        alter table 表名 add 列名 类型(长度) 约束;
    修改表修改列的类型长度及约束
        alter table 表名 modify 列名 类型(长度) 约束;
    注意: 如果有数据,必须注意数据类型 varchar-->int 容易有错误数据
    修改表修改列名
        alter table 表名 change 旧列名 新列名 类型(长度) 约束;
    修改表删除列
        alter table 表名 drop 列名;
    注意: 如果列中有数据,数据就会一起删除了,需谨慎
    修改表名
        rename table 表名 to 新表名;
    修改表的字符集
        alter table 表名 character set 字符集;
    切换数据库
        use 数据库名;
    查看正在使用的数据库
        select database();
    创建表空间
    
    create tablespace 表空间名称
    datafile '文件所在目录\表空间名称.dbf'
    size 100m (初始大小100兆)
    autoextend on
    next 10m; (自动增长,每次增长10兆)
    在表空间中创建用户
    create user 用户名
    identified by 密码
    default tablespace 表空间名称(给用户分配默认表空间);
    删除表空间
    
    drop tablespace 表空间名称;
    删除表空间连带删除数据文件
    
    drop tablespace 表空间名称 including contents and datafiles;
  2. 数据操作语言:DML

    INSERT(插入)、UPDATE(修改)、DELETE(删除)语句

    插入数据
    
    向表中插入某些列
        insert into 表 (列名 1,列名 2,列名 3..) values (值 1,值 2,值 3..);
    添加数据格式,不考虑主键
        insert into 表名(列名:不包含主键) values (值:不包含主键);
    向表中插入所有列(需要给出主键)
        insert intovalues (值 1,值 2,值 3..);
    批量写入
        insert into 表名(列名 1,列名 2,..) values (值 1,值 2,..),(值 1,值 2,..)...;

    注意:
    1.插入的数据应与字段的数据类型相同
    2.数据的大小应该在列的长度范围内
    3.在 values 中列出的数据位置必须与被加入列的排列位置相对应
    4.除了数值类型外,其它的字段类型的值必须使用引号引起
    5.如果要插入空值,可以不写字段,或者插入 null
    6.对于自动增长的列在操作时,直接插入 null 值即可

    更新数据
    
    update 表名 set 字段名=值,字段名=值;
    update 表名 set 字段名=值,字段名=值 where 条件;

    注意:
    1.列名的类型与修改的值要一致
    2.修改值的时候不能超过其最大长度
    3.值如果是字符或者日期需要加 “ ”

    删除数据
    
    删除表结构
        drop table 表名;
    逐条删除,不清空 auto_increment 记录数
        delete from 表名 [where 条件];
    直接将表删除,重新建表,auto_increment 将置为零
        truncate table 表名;(数据量大时效率高)
  3. 数据控制语言:DCL

    GRANT、REVOKE等语句

    查询当前用户的角色
        select * from role_sys_privs;
    权限分类
        dba:最高权限
        connect:可以连接数据库,做一些简单的增删改
        resource:可以创建视图、索引、序列、存储过程等
    给用户分配角色
    grant dba(权限) to 用户名;
  4. 数据查询语言:DQL

    SELECT语句

    查询数据库
    
    查询指定字段
        select 字段1,字段2,...from 表名;
    查询表中所有字段
        select * from 表名;
    去除重复记录
        select distinct 字段 from 表名;
    表别名查询
        select * from 表名 as 别名;(as可省略)
    列别名查询
        select 字段名 as 别名 from 表名;(as可省略)
    直接对列进行运算
        select (1+2);
  5. 其他

    按照用户导出数据(cmd窗口)
    exp system/密码 owner=用户 file=本地路径\文件名.dmp
    按照用户导入数据(cmd窗口)
    imp system/密码 file=本地路径\文件名.dmp fromuser=用户1 touser=用户2
    按照表导出数据(cmd窗口)
    exp 用户/密码 file=本地路径\表名.dmp tables=表名
    按照表导入数据(cmd窗口)
    imp 用户/密码 file=本地路径\表名.dmp tables=表名
    跨用户查询其他用户下的表
    select * from scott.emp;
    同义词:方便跨用户查询其他用户下的表,数据还在scott用户下
    create synonym s_emp for scott.emp;
    select * from s_emp;
    跨用户复制表(select查询创建表)
    create table emp as select * from scott.emp;
    select * from emp;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值