• python3 速查参考- python基础 9 -> MySQL基础概念、数据库create、alter、insert、update、delete、select等基础命令


    前置步骤:


     

    下载一个绿色版的mysql数据库客户端连接工具 :http://wosn.net/821.html

    mysql平台为win7(以后会有CentOS上的)

    学习目的:


     

    掌握数据库的基本概念,基础的数据库查询语句(测试人员的基础技能)

    正式步骤:


     

    step1:可能会用到的一些周边命令

    --查看mysql版本
    SELECT VERSION();
    --查看系统时间
    SELECT NOW();
    --linux 中设置允许所有用户远程登录sql服务器,%表示所有用户,123456(此字段为数据库密码)
    grant all on *.* to root@'%' IDENTIFIED BY '123456';

    step2: SQL语句的分类

    • DQL(数据查询语言,比如:select)
    • DML(数据操作语言,比如:insert、update、delete)
    • DDL(数据定义语言,比如:create、alter、drop)
    • DCL(数据控制语言,比如:grant、revoke)
    • TCL(事务控制语言,比如:SAVEPOINT、ROLLBACK、SET TRANSACTION、COMMIT)
    1. 数据库操作(DDL)
      --创建数据库
      create database db_name;
      
      --删除数据库
      drop database db_name;
      
      --切换数据库
      use db_name;
      
      --查看当前选择的数据库
      select database();

       使用navicat新建表
      在相应的数据库下,新建表,设置完字段信息后,保存,设置表明,右击新建的表,查看对象信息,点击DDL

    2. 表操作(DDL)
      修改表:
      --创建一个students表,id自增长
      create table t_student(
      id int(2) auto_increment primary key,
      sname varchar(10) not null,
      address varrchar(255)
      )
      
      --修改表:增加列、修改列、删除列
      alter table t_student add grade int;
      alter table t_student change grade mygrade int(2);
      ALTER table t_student drop mygrade;

       删除表

      --删除表
      drop table table_name;
      查看表结构
      --查看表结构
      DESC t_person;

       
      表的重命名

      --表的重命名
      rename table old_name to new_name;

    step3: 数据操作(DML、DQL)

    1. 数据的插入
      --全字段的插入
      insert into t_student values(1,'python','BJ');
      
      --部分字段插入
      insert into t_student(id,sname) values(2,'java');
      
      --一次插入多行数据
      insert into t_student(id , sname) values(3,'C'),(4,'C#'),(5,'JS');
    2. 将id设置为自增长
      --将id设置为自增长
      alter table t_student modify id int(2) auto_increment;

       此时插入数据:

      insert into t_student (id,sname,address) values(0,'html','NJ');

       此时虽然输入时id为0,而实际插入数据后,id会自动增长

    3. 使用update修改数据
      --UPDATE
      update t_student set address ='目标值' where id =5;
    4. 删除数据
      --DELETE 整个表中数据
      delete from t_student 
      --删除id为5的数据
      delete from s_student where id =5;

        

    step4: DQL-select语句操作

    1. 创建dept表
      CREATE TABLE `dept` (
        `DEPTNO` varchar(255) NOT NULL,
        `DNAME` varchar(255) DEFAULT NULL,
        `LOC` varchar(255) DEFAULT NULL
      ); 
    2. 创建emp表
      CREATE TABLE `emp` (
        `EMPNO` int(4) DEFAULT NULL,
        `ENAME` varchar(255) DEFAULT NULL,
        `JOB` varchar(255) DEFAULT NULL,
        `MGR` varchar(255) DEFAULT NULL,
        `HIREDATE` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
        `SAL` varchar(255) DEFAULT NULL,
        `COMM` varchar(255) DEFAULT NULL,
        `DEPTNO` int(4) DEFAULT NULL
      ); 
    3. 使用算术表达式
      --查询所有员工的年薪
      select ename ,sal*12 '年薪' from emp;
    4. 字段别名的设置
      as关键字可以不用

    5. 去除重复项
      --去除重复项
      select distinct deptno from emp;
    6. 排序:order by,默认为升序asc (↓最上数据为小,下面的数据大),desc为降序  (↓由大到小)
      --按月薪,升序排
      select ename ,sal from emp order by sal;

       PS:多字段排序,请在order by后接字段

    7. 查询条件中,可以使用逻辑运算符
      --条件查询
      select * from emp where deptno = 10 and sal>1250;
      select * from emp where deptno = 20 or job='CLERK';
      select * from emp where sal not in (800,1600,2000);

        

    难点分析:


     

    测试中,基础的语句可以提高工作效率

  • 相关阅读:
    【BZOJ4517】[SDOI2016] 排列计数(组合数)
    【BZOJ4818】[SDOI2017] 序列计数(矩乘水题)
    【BZOJ4872】[SHOI2017] 分手是祝愿(思维+动态规划)
    【BZOJ4821】[SDOI2017] 相关分析(线段树)
    【BZOJ2710】[Violet 1] 追风者(计算几何)
    【BZOJ3199】[SDOI2013] escape(半平面交+BFS)
    【BZOJ1007】[HNOI2008] 水平可见直线(几何)
    【BZOJ3689】异或之(可持久化Trie树)
    【BZOJ3261】最大异或和(可持久化Trie树水题)
    NOI Online #3 提高组 小记
  • 原文地址:https://www.cnblogs.com/wuzhiming/p/9108811.html
Copyright © 2020-2023  润新知