一、连接服务端
打开windows中的navicat程序,点击连接-MySQL

二、navicat使用
数据库操作
创建数据库
1、打开navicat,双击连接名(1,此时已经连接上服务端,鼠标右键点击连接名,点击新建数据库

删除数据库
鼠标右键点击某个数据库,点击删除数据库

数据表操作
创建表
打开某个数据库,鼠标右键点击数据库下面的表,点击新建表

至于其他操作就不演示了,navicat使用还是比较简单的。

三、数据类型与约束
数据类型与约束
为了更加准确的存储数据,保证数据的正确有效,需要合理的使用数据类型和约束来限制数据
的存储。

常用数据类型
整数:int,有符号范围(-2147483648 ~2147483647),无符号范围(0 ~ 4294967295)
小数:decimal,如decimal(5,2)表示共存5位数,小数占2位,整数占3位
字符串:varchar,范围(0~65533),如varchar(3)表示最多存3个字符,一个中文或一个字
母都占一个字符
日期时间: datetime,范围(1000-01-01 00:00:00 ~ 9999-12-31 23:59:59),如’2020-01-01 12:29:59’

约束
主键(primary key):物理上存储的顺序
非空(not null):此字段不允许填写空值
惟一(unique):此字段的值不允许重复
默认值(default):当不填写此值时会使用默认值,如果填写时以填写为准
外键(foreign key):维护两个表之间的关联关系

四、数据库的备份与恢复
备份
鼠标右键点击某个数据库,点击转储SQL文件->结构和数据
选择备份文件将要保存的位置,点击保存

恢复
新创建一个数据库,名字随便起,字符集和排序规则必须和之前备份的数据库一致

双击打开刚才创建的数据库,鼠标右键点击此数据库,点击运行SQL文件
然后选择刚才的sql文件就行

五、SQL语言
数据表操作:创建、删除
数据操作:增加、删除、修改、简单查询
数据操作:查询

SQL语言编写和运行
鼠标右键键点击某个数据库下面的查询按钮,然后点击新建查询

数据表操作
创建表
create table 表名(
字段名 类型 约束,
字段名 类型 约束

)
例:创建学生表,字段要求如下:
姓名(长度为10)
create table students(
name varchar(10)
)
例:创建学生表,字段要求如下:
姓名(长度为10), 年龄
create table students(
name varchar(10),
age int unsigned
)
例:创建学生表,字段要求如下:
姓名(长度为10), 年龄,身高(保留小数点2位)
create table students(
id int unsigned primary key auto_increment,
name varchar(20),
age int unsigned,
height decimal(5,2)
)

删除表
格式一:drop table 表名
格式二:drop table if exists 表名

例:删除学生表
drop table students

drop table if exists students

数据操作-增删改查
简单查询

select * from 表名
例:查询所有学生数据
select * from students

添加数据
添加一行数据
格式一:所有字段设置值,值的顺序与表中字段的顺序对应
说明:主键列是自动增长,插入时需要占位,通常使用0或者 default 或者 null 来占位,插入
成功后以实际数据为准
insert into 表名 values(…)
例:插入一个学生,设置所有字段的信息
insert into students values(0,‘张三’,22,177.56)
格式二:部分字段设置值,值的顺序与给出的字段顺序对应
insert into 表名(字段1,…) values(值1,…)
例:插入一个学生,只设置姓名
insert into students(name) values(‘张三’)
添加多行数据
方式一:写多条insert语句,语句之间用英文分号隔开
insert into students(name) values(‘李四’);
insert into students(name) values(‘张三’);
insert into students values(0,‘王五’,23,167.56)
方式二:写一条insert语句,设置多条数据,数据之间用英文逗号隔开
格式一:insert into 表名 values(…),(…)…
例:插入多个学生,设置所有字段的信息
insert into students values(0,‘张三’,23,167.56),(0,‘李四’,23,167.56)
格式二:insert into 表名(列1,…) values(值1,…),(值1,…)…
例:插入多个学生,只设置姓名
insert into students(name) values(‘张三’),(‘李四’)

修改
格式:update 表名 set 列1=值1,列2=值2… where 条件
例:修改id为5的学生数据,姓名改为 张三,年龄改为 20
update students set name=‘张三’,age=20 where id=5
删除
格式:delete from 表名 where 条件
例:删除id为6的学生数据
delete from students where id=6
逻辑删除:对于重要的数据,不能轻易执行delete语句进行删除,一旦删除,数据无法恢复,这
时可以进行逻辑删除。
1、给表添加字段,代表数据是否删除,一般起名isdelete,0代表未删除,1代表删除,默认值为0
2、当要删除某条数据时,只需要设置这条数据的isdelete字段为1
3、以后在查询数据时,只查询出isdelete为0的数据
例:
1、给学生表添加字段(isdelete),默认值为0,如果表中已经有数据,需要把所有数据的isdelete字段更
新为0
update students set isdelete=0
2、删除id为1的学生
update students set isdelete=1 where id=1
3、查询未删除的数据
select * from students where isdelete=0

数据操作-查询
创建数据表

drop table if exists students;
create table students (
studentNo varchar(10) primary key,
name varchar(10),
sex varchar(1),
hometown varchar(20),
age tinyint(4),
class varchar(10),
card varchar(20)
)
准备数据
insert into students values
(‘001’, ‘李一’, ‘女’, ‘北京’, ‘20’, ‘1班’, ‘340322199001247654’),
(‘002’, ‘李二’, ‘男’, ‘上海’, ‘18’, ‘2班’, ‘340322199002242354’),
(‘003’, ‘张大大’, ‘男’, ‘南京’, ‘24’, ‘3班’, ‘340322199003247654’),
(‘004’, ‘白武’, ‘男’, ‘安徽’, ‘22’, ‘4班’, ‘340322199005247654’),
(‘005’, ‘张百’, ‘女’, ‘天津’, ‘19’, ‘3班’, ‘340322199004247654’),
(‘006’, ‘孙香’, ‘女’, ‘河北’, ‘18’, ‘1班’, ‘340322199006247654’),
(‘007’, ‘百合’, ‘男’, ‘山西’, ‘20’, ‘2班’, ‘340322199007247654’),
(‘008’, ‘乔红’, ‘女’, ‘河南’, ‘15’, ‘3班’, null),
(‘009’, ‘百色’, ‘男’, ‘湖南’, ‘21’, ‘1班’, ‘’),
(‘010’, ‘李振东’, ‘女’, ‘广东’, ‘26’, ‘2班’, ‘340322199607247654’),
(‘011’, ‘李刚’, ‘男’, ‘北京’, ‘30’, ‘4班’, ‘340322199005267754’),
(‘012’, ‘孙吴’, ‘男’, ‘新疆’, ‘26’, ‘3班’, ‘340322199000297655’)
查询所有字段
select * from 表名
例:
select * from students
查询指定字段
在select后面的列名部分,可以使用as为列起别名,这个别名出现在结果集中

select 列1,列2,… from 表名
– 表名.字段名
select students.name,students.age from students
– 可以通过 as 给表起别名
select s.name,s.age from students as s
– 如果是单表查询 可以省略表明
select name,age from students

  • 使用as给字段起别名
    select studentNo as 学号,name as 名字,sex as 性别 from students

消除重复行
在select后面列前使用distinct可以消除重复的行
select distinct 列1,… from 表名;
例:
select distinct sex from students;

条件
使用where子句对表中的数据筛选,符号条件的数据会出现在结果集中
语法如下:
select 字段1,字段2… from 表名 where 条件;
例:
select * from students where id=1;

where后面支持多种运算符,进行条件的处理
比较运算
逻辑运算
模糊查询
范围查询
空判断
比较运算符
等于: =
大于: >
大于等于: >=
小于: <
小于等于: <=
不等于: != 或 <>
例1:查询小乔的年龄
select age from students where name=‘李二’
例2:查询20岁以下的学生
select * from students where age<20
例3:查询家乡不在北京的学生
select * from students where hometown!=‘北京’

逻辑运算符
and
or
not
例1:查询年龄小于20的女同学
select * from students where age<20 and sex=‘女’
例2:查询女学生或’1班’的学生
select * from students where sex=‘女’ or class=‘1班’
例3:查询非天津的学生
select * from students where not hometown=‘天津’

模糊查询
like
%表示任意多个任意字符
表示一个任意字符
例1:查询姓孙的学生
select * from students where name like ‘孙%’
例2:查询姓孙且名字是一个字的学生
select * from students where name like '孙

例3:查询叫乔的学生
select * from students where name like ‘%乔’
例4:查询姓名含白的学生
select * from students where name like ‘%白%’

范围查询
in表示在一个非连续的范围内
例1:查询家乡是北京或上海或广东的学生
select * from students where hometown in(‘北京’,‘上海’,‘广东’)
between … and …表示在一个连续的范围内
例2:查询年龄为18至20的学生
select * from students where age between 18 and 20

空判断
注意:null与’'是不同的
判空is null
例1:查询没有填写身份证的学生
select * from students where card is null
判非空is not null
例2:查询填写了身份证的学生
select * from students where card is not null

软件测试 学习之路 SQL语言及navicat使用相关推荐

  1. 软件测试 学习之路 基本介绍

    一.软件测试定义 通过手工或者工具对 "被测对象"进行测试操作,从而验证实际结与预期结果之间是否存在差异 . 二.软件测试的作用 1.通过测试工作可以发现并修复软件当中存在的缺陷, ...

  2. 软件测试学习之路-----文本编辑器和计算机基本命令笔记

    前言:为什么软件测试要学习文本编辑器,还有计算机基本命令这些奇奇怪怪的东西?亲,上一节系统都装了,啥系统记得不?Linux系统是吧?那不得用起来吗?留着卖给收废品的么???咋用知道不?可不就是这些奇奇 ...

  3. 程序员的自我修养——SQL语言及MySQL数据库

    SQL简介 SQL语言介绍 SQL全称:Structured Query Language,是结构化查询语言,用于访问和处理数据库的标准的计算机语言. SQL的特点 具有综合统一性,不同数据库的支持的 ...

  4. 【软件测试学习】mysql入门(基于Navicat)

    概念 数据:data 数据库:DB(database),指存储数据的仓库.长期存储在计算机内有组织的.可共享的大量数据的集合. 数据库管理软件:DBMS用来操作和管理数据仓库的软件.      可分为 ...

  5. oracle学习之路(2)Navicat Premium 15 连接Oracle 数据库(图文教程)

    Navicat premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到 MySQL.SQLite.Oracle及PostgreSQL 资料库,让管理不同类 ...

  6. 软件测试学习之路-----DOS命令与Linux系统笔记

    前言:软件测试为什么要学习DOS命令与Linux系统呢?这个问题,咱们来这么想.软件测试,是不是只要有个软件就行?那肯定不是,没了计算机啥都白瞎.然后现在人用的计算机通常都是Windows系统.那有W ...

  7. 软件测试 学习之路 CSS(一)

    一.CSS与HTML关系 HTML是网页的骨架,只有简单的内容框架,而CSS提供内容的样式,而我们所看到的网页都是经过CSS美化呈现出来的 . css代码分布在html的head标签之间title标签 ...

  8. 月入10k的软件测试学习之路

    1.什么是软件测试 1.1软件测试的定义: 什么是软件测试: 在规定条件下对程序进行操作,从而发现问题,对软件质量进行评估的过程. 软件测试的目的: 以最少的人力.物力.时间找到软件中的缺陷并修改,从 ...

  9. mysql中常用动词_Mysql DBA 高级运维学习之路-sql语言介绍及分类

    1.什么是sql SQL英文全称是Structured Query Language,中文意思是结构化查询语言.它是一种对关系型数据库中的数据进行定义和操作的语言方法.是大多数关系数据库管理系统所支持 ...

最新文章

  1. 高性能微服务架构设计模式@霞落满天
  2. TODO:Github的使用技巧之同步代码
  3. UA MATH563 概率论的数学基础 鞅论初步1 条件期望
  4. mybatis 传入id_想深入理解MyBatis架构及原理实例分析 把握这些就够了
  5. Properties类详细解析
  6. NuGet Error:Unable to find version ‘0.3.3.0‘ of package ‘glog.overlay-x64_v120_Release_dynamic‘.
  7. 关于request.getServletPath(),request.getContextPath()的总结
  8. 兄弟 你们永远是我的大哥哥
  9. Java 语言的几个缺陷(个人感觉)
  10. 无界面和应用图标的应用程序
  11. python元组可以修改吗_python元组元素可以修改吗
  12. matlab线性代数电子书,实用大众线性代数 MATLAB版_13652907.pdf
  13. 《算法竞赛入门经典》————竖式问题
  14. vsftpd匿名登陆连接报错:500 OOPS: vsftpd: refusing to run with writable root inside chroot()(未解决)
  15. 鱼塘钓鱼 优先队列 多路归并排序 贪心
  16. Guitar Pro2023吉他谱作曲和练习工具
  17. 【C++小游戏】推箱子代码+详解
  18. Testlink配置设置(参考文章)
  19. 关于测试工程师进入职场如何规划自己的职业测试生涯。
  20. 4.12 使用格式刷实现单元格样式的快速复制 [原创Excel教程]

热门文章

  1. python并发之concurrent快速入门
  2. starUML教程-用例图/类图
  3. 软件工程师应具备什么样的素质
  4. 小程序picker-view的使用
  5. IMAUOJ——1013: 超级密码
  6. 阿里云周宇:神龙计算平台智能运维体系建设
  7. python interpreter配置_PyCharm使用之配置SSH Interpreter
  8. Boosting和Bagging区别
  9. STM32 -- 做一块自己的开发板(STM32F103C8T6)
  10. 一个简单的SQL注入攻击