Mysql数据库基操

SQL语句的分类

  1. DDL(Data Definition Language)数据定义语言 用来定义数据库对象:数据库,表,列等。关键字:create, drop,alter等

  2. DML(Data Manipulation Language)数据操作语言 用来对数据库中表的数据进行增删改。关键字:insert, delete, update等

  3. DQL(Data Query Language) 数据查询语言 (掌握)

    DQL语言并不是属于MYSQL官方的分类,但是对数据库的操作最多就是查询,所以把查询语句的语句称作为DQL语言

  4. DCL(Data Control Language)数据控制语言(了解)

    用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT, REVOKE等

  5. TCL(Transaction Control Language) 事务控制语言或TPL事务处理语言

    用于控制数据库的事务操作,关键字; COMMIT,SAVEPOINT,ROLLBACK等

  6. CCL(Cursor Control Language)指针控制语言(了解)

    像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。多用于存储过程中对结果集的处理。

    

SQL通用语法

  1. SQL语句可以单行或多行书写,以分号结尾。

  2. 可使用空格和缩进来增强语句的可读性。

  3. MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。

    SELECT * FROM student;
  4. 3种注释
  5. 单行注释: -- 注释内容 或 # 注释内容(mysql特有) 多行注释: /* 注释 */

用户管理(DDL


    -- 查看用户
    -- select 列名,列名,... from mysql.user;
    select host, user, authentication_string from mysql.user;

    -- 创建用户
    -- create user '用户名'@'ip地址' IDENTIFIED by '密码';
    create user 'zs'@'localhost' IDENTIFIED by '123';
    
    -- 修改密码
    alter user 'zs'@'localhost' IDENTIFIED by '456';

权限管理(DCL)

    -- 用户授权
    -- grant 权限码 on 数据库名.表名 to 用户名@主机名
    grant all on *.* to 'zs'@'localhost';
    
    -- 查看用户权限
    -- show grants for 用户名@主机名;
    show grants for 'root'@'%';
    
    -- 取消用户权限
    -- REVOKE 权限码 ON 库名.表名 FROM 用户名@主机名;
    revoke DELETE on *.* from 'zs'@'localhost';
    
    -- 刷新权限
    FLUSH PRIVILEGES;
    

数据库操作(DDL)
    
    --创建数据库
        -- create database 数据库名称;                                                                           
        -- create database if not EXISTS 数据库名称;                                               
        -- create database if not EXISTS 数据库名称 character set 编码;           
    
    --查看当前所有数据库
        show databases;
    
    --修改数据库字符集
        ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集;
        
    -- 删除数据库
        DROP DATABASE 数据库名
    
    -- 使用数据库(一般用于命令行下使用)
        use 数据库名

数据库表的操作
    
    --创建表
        CREATE TABLE [IF NOT EXISTS] 表名 (
           字段名 字段类型 [ primary key | unique | not null | auto_increment |
              | binary | default 缺省值 | comment 注释语句],
           ......
        ) [ ENGINE=InnoDB | DEFAULT CHARSET=utf8 ];
        

    --查看表
        --1.查看当前数据库下有哪些表
        show tables;
        
        --2.查看表的结构
        desc t_user2;
        
        --3.查看建表语句
        show create table t_user1;
        
    --删除表

        drop table t_user;
        
        
    --修改表
        --1.添加列
            --ALTER TABLE 表名 ADD 列名 类型
            alter table t_user add address varchar(255);
    
        --2.修改列类型
            --ALTER TABLE 表名 MODIFY 列名 新的类型
            alter table t_user MODIFY sex char(2);
        
        --3.修改列名
            --ALTER TABLE 表名 CHANGE 旧列名 新列名 类型;
            alter table t_user change name username varchar(255);
        
        --4.删除列
            --ALTER TABLE 表名 DROP 列名;
            alter table t_user drop address;
        
        --5.修改表名
            --RENAME TABLE 表名 TO 新表名;
            rename table t_user to t_user1;
        
        --6.修改字符集
            --ALTER TABLE 表名 character set 字符集;
            alter table t_user1 character set 'UTF8';

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值