mysql有多简单

作者: 烤奶要加冰 | 来源:发表于2019-08-17 11:51 被阅读0次

    说明:MySQL是一个关系型数据管理系统(RDBMS),以表格的形式存储、管理数据。

    • 数据库的分类:
      • 关系型数据库:MySQL、Oracle、SQL Server...等
      • 非关系数据库:Redis、MongoDB...等
    • MySQL下载路径:
      https://pan.baidu.com/s/1Yd5pwStk_6AGcJNpVhcq6w
    • 命令分类:
      • 数据定义语言(DDL):创建、删除、修改
      • 数据操作语言(DML):增、删、改
      • 数据查询语言(DQL): 查
      • 数据控制语言(DCL):授权、取消授权
      • 数据事务语言(DTL):开启事务、提交事务、事务的回滚

    以下操作命令都是在终端打开mysql服务后进行。

    DDL

    只对数据库、表结构进行操作

    • 修饰字段符:
      • unsigned:无符号
      • not null:不能为空
      • default:默认值
      • auto_increment:设置自增长
      • zerofill:高位填充0
    • 索引:
      • index:普通索引
      • primary key:主键索引
      • unique:唯一索引
      • fulltext:全文索引

    注意:
    1、MySQL 5.6 以前的版本,只有 MyISAM 存储引擎支持全文索引;
    2、MySQL 5.6 及以后的版本,MyISAM 和 InnoDB 存储引擎均支持全文索引;
    3、只有字段的数据类型为 char、varchar、text 及其系列才可以建全文索引。

    show databases;          #显示所有的数据库
    use database;          #选择数据库
    create database 库名;       #创建数据库
    drop database 库名;           #删除数据库
    
    show tables;                 #显示当前数据库下的所有数据表
    create table 表名(            #创建表
        字段1 数据类型 修饰字段符1 修饰字段符2,
        字段2 数据类型 修饰字段符,
        primary key(字段1)
    )engine=InnoDB default charset=utf8;
    desc 表名;         #查看表结构
    drop table 表名;         #删除表
    
    alter table 表名 add 字段 数据类型;         #在指定表添加字段
    alter table 表名 add 字段 数据类型 after 字段;#在指定字段后添加新字段,也可以使用first
    alter table 表名 modify 字段 新的数据类型;     #修改字段的数据类型
    alter table 表名 change 原字段 新字段 数据类型;    #修改表中的字段名
    alter table 原表名 rename 新表名;      #修改数据表的名字
    alter table 表名 drop 字段;           #删除指定字段
    
    show keys from 表名;     #查看所有索引名
    alter table 表名 add index(字段);    #添加普通索引
    alter table 表名 drop index 字段;   #删除普通索引、唯一索引、全文索引
    alter table 表名 drop primary key;    #删除主键索引
    
    show variables like "%character%";            #查看当前的字符集
    show variables like "%engine%";               #查看当前的存储引擎
    

    engine:设置数据表的存储引擎,默认 InnoDB
    charset:设置数据表的字符集为 utf8
    modify 与 change 也可以使用first、after,起到移动字段的作用。

    DML

    对数据表中数据的操作

    ##插入数据
    insert into 表名 (字段1,字段2) values (value1,value2),(value3,value4)
    
    #删除数据
    delete from 表名 where 条件;
    
    ##更新数据
    update 表名 set 改变的值 where 条件;
    

    删除与修改表中的数据时,一定要加上条件!

    DQL

    对数据表中进行查询的操作

    • 常用函数:
      • count():统计数量
      • sum():求和
      • max() / min() :返回最大值 / 最小值
      • avg():平均值
    select * from 表名;
    select * from 表名 where 条件;
    select * from 表名 group by 字段;    #根据指定字段分组
    select 字段,count(字段) from 表名 group by 字段;     #显示指定字段名与数量
    select* from 表名 order by 字段;    #根据指定字段排序,默认升序
                                        # asc-->升序,desc-->降序
    
    #隐式内链接
    select * from 表1,表2 where 条件;
    
    #显式内连接
    select * from 表1 join 表2 on 条件;
    
    #左外连接
    select * from 表1 left join 表2 on 条件;
    
    #右外连接
    select * from 表1 right join 表2 on 条件;
    
    • 常用条件符号:
      • <、>、<=、>=、!=、<>
      • between ... and ...
      • in 、not in
      • like 条件
      • is null 、is not null

    DCL

    对数据库用户的权限进行的操作

    • 权限可以是:
      • select
      • insert
      • update
      • delete
      • all privileges
    ##创建 / 删除其他用户
    create user '用户名'@'主机名' identified by '密码';      
    drop user '用户名'@'主机名' ;
    
    ##授予 / 取消权限
    grant 权限 on *.* to '用户名'@'主机名' identified by '密码';
    revoke 权限 on *.* from '用户名'@'主机名';
    
    flush privileges;    #刷新权限
    show grants;        #查看当前用户的权限
    show grants for '用户名'@'主机名';    #查看指定用户的权限
    

    *.*:前一个*表示所有库,后一个*表示所有表

    DTL

    事务只能作用于数据表中的数据发生更新时起作用,包括:数据的插入、删除、修改,一旦事务提交后,数据就会永久性保存。

    #开启事务,即设置事务不能自动提交
    set autocommit=0;
    
    #撤销事务
    rollback;
    
    #提交事务
    commit;
    

    pycharm连接mysql

    import pymysql
    
    #创建数据库连接对象
    conn = pymysql.connect(
            host='localhost',user='root',password='123456',
            port=3306,database='test',charset='utf8')
    print(conn)    #打印结果为一个对象时,即连接成功。
    

    相关文章

      网友评论

        本文标题:mysql有多简单

        本文链接:https://www.haomeiwen.com/subject/npkhsctx.html