软件测试之必备数据库知识

数据库简介:

1.Oracle数据库

  • 提起数据库,第一个想到的公司,一般都是Oracle(甲骨文)

2.SQL Server数据库:微软开发的,是web最流行的用于存储数据的数据库,广泛应用于电子商务,银行,保险,电力等与数据库有关的行业

收费且不好用,因此,如今用的越来越少

3.MySQL数据库(被Oracle收购)

4.操作命令:

  • 启动:mysql;    (Linux中启动:sudo service mysql start)
  • 清屏:clear;     
  • 退出:exit;        
    登录(进入)mysql常用的是:mysql  -u  root  -p;    (-u用户名,-p用户密码,其中如果没有设置用户名则root为默认的用户名)
    • 敲击后会提示输入密码(输入后没有显示,隐码输入),如果刚安装好MYSQL没设置密码,超级用户root是没有密码的,故直接回车即可进入到MYSQL中
  • 显示当前所有数据库:show  databases;
  • 进入(切换到)一个数据库:use  数据库名;
  • 显示当前数据库内容(数据库的所有表):show  tables;
  • 显示某个表的所有数据:select  *  from  表名;
  • 显示表中的一些字段:select  字段1,字段2,字段3  from  表名;     例如:select  id,name,salary  from tbwork;
  • 创建表:create  table  表名 

(id  int,

name  char(10),

age  int,

score  float);(各个属性和对应类型设置好即可)

例1:

create  table stu

(id  int,

name  char(10),

age  int,

score  float);

    • 显示表:show  tables;
    • 显示表stu的结构:desc  stu;(或者describe  stu;)

例2:创建表class,id设置为主键,班级人数默认值为30(如果你不设置人数默认为30):             PS:一旦id设置为主键,则在插入数据不能重复,且插入数据时必须加上id

create  table  class

(id  int  primary  key,       (若要不为空:id int primary key  not  null,)

name  char(20),

num  int  default  30);

    • 插入:insert  into  表名(字段) values(字段)    PS:多个加s
  1. 接着插入一条数据到表stu:insert  into  stu(id,name,age,score)  values(101,'Tom',20,98); 

PS:前面几个字段,后面对应几个字段,字符串用单引号或者双引号;

2.插入一条数据到表class,不写班级人数:

    • 数据为:id是1004,name为Water
    • 命令:insert  into  class(in,name)  values(1004,'Water');
    • 紧接着查询class的信息:select  *  from  class;             (发现1004的人数为30,因为没有插入人数,上面默认人数为30)
  • 修改表stu:
    • update  表名  set  修改字段和值  where  哪个id;
      • 例如:修改表stu中id为101的分数为96:update  stu  set  score=96  where  id=101;
      •  例如:表stu中每人年龄每过一年加1,怎么修改:update  stu  set  age=age+1;
    • 修改stu的结构,在stu中增加地址addr:alter  table  stu  add  addr char(60);        (此时select  *  from  stu可以发现表中score后面多了addr一项)
    • 紧接着想在score和addr中间加生日bd:alter  table  stu  add  bd  char(6) after  score;
    • 接着想改bd为出生年份year:alter  table  stu  change  bd  year  int;
    • 删除字段year:alter  table  stu  drop  year;
  • 查询:
    • 选择查询某一列:select  字段  from stu;      例如:select  id  from  stu;   (多列加上多个字段即可)
    • 有条件选择某一行:select  *  from  stu  where 条件;    
      •  例如:
      • select  *  from  stu  where  id=101;      
      • select  *  from  stu  where  score>96;
      • select  *  from  stu  where  score<96  and  score  >94;
      • select  *  from  stu  where  score<96  and  id=107;
      • select  *  from  stu  where  score>97  or  score<93;
      • select  *  from  stu  where  name='Rose';

select  *  from  stu  where  name  like 'xLx';(like是通配符,xLx表示只要name中包含L的都选择查询出来)

select  *  from  stu  where  name  like 'Lx';(Lx表示name中L在开头的)

select  *  from  stu  where  name  like 'xL';(Lx表示name中L在最后的的)

select  *  from  stu  where  score  like 'x9x';(分数score中有9的)

 

      • select  *  from  stu  where  id=101  or  id=102  or  id=103;    等价于:select  *  from  stu  where  id  in(101,102,103);          (用in()集合更方便)
  • 多表复合查询:
    • 例如:
    • 在上面的表中,查询表work中id等于表salary中工资salary为8500的wid的信息:select  *  from  work  where  id=(select  wid  from  salary  where  salary=8500);

 

 

原文地址:https://www.cnblogs.com/zhou0000/p/8287520.html