测试人员需要了解的sql知识(基础篇)
这是第一篇关于数据库的,本着详细的原则,基础的还是不能放过,还是那句话,有问题,欢迎指出!
-------------------------------------------------------------自然的分割线-------------------------------------------------------------------
一,什么是数据库(Database)
数据库也是一种软件,是按照数据结构来组织、存储和管理数据的仓库;类比存货的仓库, 其中数据结构可能是货物的类型(食物,器材等),放货物的容器(箱,包等),货物的堆放方式(横着堆,竖着堆)以及货物之间的排列方式等等。假如在淘宝上买东西,你的个人信息,收货地址,商品信息,订单信息等都可以放在数据库中。
二,什么是SQL
结构化查询语言(Structured Query Language)简称SQL,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;说白了就是可以编写一串命令来操作数据库的语言。
三,常用的数据库
目前商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟,如微软的Access(小型),SQL server(仅windows,中大型);免费开源的MySql(中小型),成熟稳定的Oracle(中大型),流行而又陌生的DB2(中大型)和开源的postgresql(中大型)。其他非关系型数据库如MongoDB,Redis,Hbase等,可以自行了解下。
四,SQL的增删查改
借鉴w3school,虽然不同的数据库使用sql有着不同差异,但是都兼容标准,注:w3school说SQL 对大小写不敏感!如SELECT 等效于 select
1,查询 SELECT (测试中,适用于查询表的所有信息)
执行后,结果被存储在一个结果表中(称为结果集)
SELECT 列名称(或*) FROM 表名称 ---------*代表全部列
2,插入 INSERT(测试中,适用于在表中插入新的行)
INSERT INTO 表名称 VALUES (值1, 值2,....) ---------值与列相对应
也可以指定所要插入数据的列:
INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....) ---------未包括列的值为空
3,修改 UPDATE(测试中,适用于修改表中的值,需要where条件)
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 ---------修改多列,列名称=新值,列名称=新值,...
4,删除 DELETE(测试中,适用于删除表中的某一行,可需要where条件)
DELETE FROM 表名称 WHERE 列名称 = 值 ----------不加where条件,删除所有行数据
五,常用辅助查询
1,DISTINCT 语句(测试中,适用于去除重复值,并返回列)
SELECT DISTINCT 列名称 FROM 表名称 ----------针对多列重复,列名称,列名称,...
2,WHERE 语句(测试中,适用于有条件选取语句)
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
部分运算操作符如下:
3,AND 和 OR 语句(测试中,适用于结合多个where条件)
AND 显示多个条件都满足的记录,而OR 只要有一个条件满足则显示。
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 AND/OR 列 运算符 值 ---------可用圆括号来组成复杂的表达式
4,LIKE与通配符(测试中,适用于查找特定的某一值)
SELECT 列名称 FROM 表名称 WHERE 列 LIKE 值 -----------如查找姓氏为李的所有记录,where name like '李%'
值可以使用一下通配符组成:
5,IN与BETWEEN操作符(测试中,in适用于设置多个值,between适用于值的区间)
SELECT 列名称 FROM 表名称 WHERE 列 IN (值1,值2,...) SELECT 列名称 FROM 表名称 WHERE 列 BETWEEN 值1 AND 值2 ---------这里值1值2可以使数字,文本,日期,不同的数据库可能包含值1值2,也可能不包含
6,ORDER BY 语句(测试中,适用于对结果集进行排序)
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 ORDER BY 列名称 (DESC/ASC) ---------多列排序,以逗号隔开,并以第一个为准,第一个有重复地再看第二个,以此类推
测试人员需要了解的sql知识(基础篇)的更多相关文章
- 测试人员需要了解的sql知识(提高篇)
上一篇写了一些基础的sql知识,这里再深挖一些常用的 ------------------------------------------------------------------骄傲的分割线- ...
- SQL——语法基础篇(上)
用数据库的方式思考SQL是如何执行的 虽然 SQL 是声明式语言,我们可以像使用英语一样使用它,不过在 RDBMS(关系型数据库管理系统)中,SQL 的实现方式还是有差别的.今天我们就从数据库的角度来 ...
- oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器
PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语 ...
- oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器
PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语言是 ...
- 测试人员应该掌握的oracle知识体系
闲来无事,总结了一下,软件测试人员应该掌握的基本的oracle数据库知识体系 1.安装 1.1 oracle安装 1.2 oracle升级 1.3 oracle补丁 2.管理 2.1数据库创建(dbc ...
- sql优化基础篇
优化的步骤: 0.先sql运行看看是否真的很慢,注意设置SQL_NO_CACHE 1.where条件单表查,锁定最小返回记录表.这句话的意思是把查询语句的where都应用到表中返回的记录数最小的表开始 ...
- oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数
花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...
- oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数
花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用oracle用 ...
- oracle(sql)基础篇系列(三)——数据维护语句、数据定义语句、伪列
DML语句 insert 向表中插入新的记录 --三种插入方式 --(1)不写字段的名字,直接按照字段的顺序把值逐个往里插 insert into dept2 values(50,'DANAM ...
随机推荐
- 【错误整理】ora-00054:resource busy and acquire with nowait specified解决方法【转】
当某个数据库用户在数据库中插入.更新.删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait ...
- ActiveMQ 消息持久化到数据库(Mysql、SQL Server、Oracle、DB2等)
ActiveMQ具体就不介绍了,直接介绍如何讲ActiveMQ持久化到本地数据库,以SQL Server 2008 R2为例1.下载ActiveMQ后直接解压,我下载的是apache-activemq ...
- Centos 7 系统操作
修改系统语言 https://blog.csdn.net/hanchao_h/article/details/72820999 修改后,马上查看man bash,发现已经变成了英文版.(中文版句子不通 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验九:PS/2模块③ — 键盘与多组合键
实验九:PS/2模块③ — 键盘与多组合键 笔者曾经说过,通码除了单字节以外,也有双字节通码,而且双字节通码都是 8’hE0开头,别名又是 E0按键.常见的的E0按键有,<↑>,<↓ ...
- Centos 7.x系统安装后的初始化配置
1.配置IP.网关,编辑/etc/sysconfig/network-scripts/ifcfg-eno16777736 TYPE=Ethernet BOOTPROTO=none //默认为dhcp ...
- 通过Adb 查看当前正在运行的Activity.
extends:http://www.cnblogs.com/tt_mc/p/4269833.html adb shell dumpsys activity activities | sed -En ...
- Zabbix监控Nginx状态信息
首先要检查Nginx是否安装了 http_stub_status_module 模块,通过下面的命令可以看到编译参数.yum安装的默认会带有这个模块. [root@kafka60 ~]# /data/ ...
- 对Yii2中 yii\web\User的理解,和自建的app\models\User(基础版),frontend\models\User的应用原理
yii\web\User 是一个统称,为用户,没有具体实例,只能管理: 此处以app\models\User为基准: app\models\User 是映射数据表user的model类,同时也实现接口 ...
- Swift 使用 LLDB 调试命令
swift 和 oc 的语法不一样: Xcode 调试技巧之 Swift 篇 打印和赋值,观察数值变量和view对象属性 p指令可打印其对象类型.内存地址以及该对象的值等具体信息, po指令则是打印其 ...
- 牛客网多校赛第九场A-circulant matrix【数论】
链接:https://www.nowcoder.com/acm/contest/147/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...