• mysql数据库基础语句(一)


    MySQL数据库

    创建数据库 : create database 数据库名称 [character set 字符集 collate 字符集校对规则];
    查看数据库服务器中所有的数据库:show databases;
    查看某个数据库的定义信息: show create database 数据库名称;
    修改数据库: alter database 数据库名称 character set 字符集 collate 校对规则;
    删除数据库: drop database 数据库名称;
    切换数据库: use 数据库名称;
    查看当前正在使用的数据库: select database();

    创建表: create table 表名称(字段名称 字段类型(长度) 约束,字段名称 字段类型(长度) 约束…);
    约束: 
    主键约束:primary key 主键约束默认就是唯一 非空的
    唯一约束:unique
    非空约束:not null

    例:

    create database web_test1;
    use web_test1;
    create table user(
    id int primary key auto_increment,
    username varchar(20) unique,
    password varchar(20) not null,
    age int,
    birthday date
    );

    查看某个数据库下的所有的表语法:show tables;
    查看某个表的结构信息语法:desc 表名;

    删除表: drop table 表名;
    修改表: 添加列 alter table 表名 add 列名 类型(长度) 约束;
    修改列类型 长度和约束 alter table 表名 modify 列名 类型(长度) 约束;
    删除列 alter table 表名 drop 列名;
    修改列名称 alter table 表名 change 旧列名 新列名 类型(长度) 约束;
    修改表名 rename table 表名 to 新的表名;
    修改表名 rename table 表名 to 新的表名;


    SQL对数据库表的记录进行操作
    SQL添加表的记录 
    向表中插入某些列:insert into 表名 (列名1,列名2,列名3…) values (值1,值2,值3…)
    向表中插入所有列:insert into 表名 values (值1,值2,值3…);

    注意事项
    1.值的类型与数据库中表列的类型一致。
    2.值的顺序与数据库中表列的顺序一致。
    3.值的最大长度不能超过列设置最大长度。
    4.值的类型是字符串或者是日期类型,使用单引号引起来。

    直接向数据库中插入中文记录会出现错误!!!
    解决方法:
    show variables like '%character%'; --查看数据库中与字符集相关参数:
    需要将MySQL数据库服务器中的客户端部分的字符集改为gbk。
    找到MySQL的安装路径:my.ini文件,修改文件中[client]下的字符集

    SQL修改表的记录
    update表名 set 列名=值,列名=值[where 条件];
    SQL删除表的记录
    delete from 表名 [where 条件];
    注意事项
    1.删除表的记录,指的是删除表中的一行记录。
    2.删除如果没有条件,默认是删除表中的所有记录。

    删除表中的记录有两种做法:
    delete from user;
    删除所有记录,属于DML语句,一条记录一条记录删除。事务可以作用在DML语句上的
    truncate table user;
    删除所有记录,属于DDL语句,将表删除,然后重新创建一个结构一样的表。事务不能控制DDL的


    SQL查看表的记录

    基本查询 select distinct *|列名 from 表 [条件]; ([distinct]表示不显示重复的值,可以不要)
    查看学生姓名和学生的总成绩
    select name,english+chinese+math from exam;
    别名查询
    select name,english+chinese+math as sum from exam;

    条件查询
    使用where子句
    > , < , >= , <= , <> ,=
    like:模糊查询
    in:范围查询
    条件关联:and , or ,not
    like可以进行模糊查询,在like子句中可以使用_或者%作为占位符。_只能代表一个字符,而%可以代表任意个字符。
    * like ‘李_’ :名字中必须是两个字,而且是姓李的。
    * like ‘李%’ :名字中姓李的学生,李子后可以是1个或任意个字符。
    * like ‘%四’ :名字中以四结尾的。
    * like ‘%王%’ :只要名称中包含这个字就可以。
    排序查询
    使用order by 字段名称 asc/desc;(desc是倒序查询,asc是正序查询,不写默认是正序)

    查询学生信息,先按照语文成绩进行倒序排序,如果成绩相同再按照英语成绩升序排序
    select * from exam order by chinese desc,english asc;

    分组统计查询
    聚合函数使用
    sum();
    获取所有学生的英语成绩的总和:
    select sum(english) from exam;
    count();
    获得学生的总数
    select count(*) from exam;
    max();
    获得数学成绩的最高分:
    select max(math) from exam;
    min();
    获得语文成绩的最小值
    select min(chinese) from exam;
    avg();
    获取语文成绩的平均值
    select avg(chinese) from exam;
    分组查询
    语法:使用group by 字段名称;

    where的子句后面不能跟着聚合函数。如果现在使用带有聚合函数的条件过滤(分组后条件过滤)需要使用一个关键字having

    在员工表上添加外键
    alter table employee add foreign key (dno) references dept(did);
    设置外键为非空
    alter table employee modify dno int not null;

  • 相关阅读:
    【转载】AB测试结果分析
    【面试】HTTP post请求与get请求的区别
    如何做好接口测试?【转载】
    ContactsUtil 工具类
    接口测试第三课(HTTP协议简介) -- 转载
    接口测试第一课(基础知识篇)
    如果做好测试PM【转载】
    HttpClient发送Get和Post请求
    获取终端ip地址
    接口功能测试策略
  • 原文地址:https://www.cnblogs.com/qds1401744017/p/13395656.html
Copyright © 2020-2023  润新知