这是第一篇关于数据库的,本着详细的原则,基础的还是不能放过,还是那句话,有问题,欢迎指出!

-------------------------------------------------------------自然的分割线-------------------------------------------------------------------

一,什么是数据库(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知识(基础篇)的更多相关文章

  1. 测试人员需要了解的sql知识(提高篇)

    上一篇写了一些基础的sql知识,这里再深挖一些常用的 ------------------------------------------------------------------骄傲的分割线- ...

  2. SQL——语法基础篇(上)

    用数据库的方式思考SQL是如何执行的 虽然 SQL 是声明式语言,我们可以像使用英语一样使用它,不过在 RDBMS(关系型数据库管理系统)中,SQL 的实现方式还是有差别的.今天我们就从数据库的角度来 ...

  3. oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器

      PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语 ...

  4. oracle(sql)基础篇系列(五)——PLSQL、游标、存储过程、触发器

    PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语言是 ...

  5. 测试人员应该掌握的oracle知识体系

    闲来无事,总结了一下,软件测试人员应该掌握的基本的oracle数据库知识体系 1.安装 1.1 oracle安装 1.2 oracle升级 1.3 oracle补丁 2.管理 2.1数据库创建(dbc ...

  6. sql优化基础篇

    优化的步骤: 0.先sql运行看看是否真的很慢,注意设置SQL_NO_CACHE 1.where条件单表查,锁定最小返回记录表.这句话的意思是把查询语句的where都应用到表中返回的记录数最小的表开始 ...

  7. oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数

        花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...

  8. oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数

    花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用oracle用 ...

  9. oracle(sql)基础篇系列(三)——数据维护语句、数据定义语句、伪列

      DML语句 insert 向表中插入新的记录   --三种插入方式 --(1)不写字段的名字,直接按照字段的顺序把值逐个往里插 insert into dept2 values(50,'DANAM ...

随机推荐

  1. WP8.1学习系列(第二十三章)——到控件的数据绑定

    在本文中 先决条件 将控件绑定到单个项目 将控件绑定到对象的集合 通过使用数据模板显示控件中的项目 添加详细信息视图 转换数据以在控件中显示 相关主题 本主题介绍了如何在使用 C++.C# 或 Vis ...

  2. c++多线程——锁技巧

    [转自]here 编写程序不容易,编写多线程的程序更不容易.相信编写过多线程的程序都应该有这样的一个痛苦过程,什么样的情况呢?朋友们应该看一下代码就明白了, void data_process() { ...

  3. 【Spring Boot && Spring Cloud系列】Spring Boot的启动器Starter

    Spring Boot的内置Servlet Container: Name Servlet Version Java Version Tomcat8 3.1 Java 7+ Tomcat7 3.0 J ...

  4. sencha touch Carousel 自动切换

    代码是在网上找的,忘记原出处了 /** * 跑马灯自动切换 */ Ext.define('ux.RotatingCarousel', { extend: 'Ext.carousel.Carousel' ...

  5. nginx+memcache实现页面缓存应用

    一.前言 nginx的memcached_module模块可以直接从memcached服务器中读取内容后输出,后续的请求不再经过应用程序处理,如php-fpm.django,大大的提升动态页面的速度. ...

  6. innodb 锁机制

    InnoDB锁问题 InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION):二是采用了行级锁.行级锁与表级锁本来就有许多不同之处,另外,事务的引入也带来了一些新问题.下面我 ...

  7. 去除select边框和三角-----appearance:none

    今天发现一个比较有意思的属性,appearance:none 可能有朋友不认识,但是有一个标签你肯定认识:select. 这个标签的样式是这样的: 一般情况下,我们所使用的border:0; 去除边框 ...

  8. [APP] Android 开发笔记 003-使用Ant Release 打包与keystore加密说明

    接上节 [APP] Android 开发笔记 002 5. 使用ant release 打包 1)制作 密钥文件 release.keystore (*.keystore) keytool -genk ...

  9. iOS 禁止手势滑动翻页

    - (void)viewDidAppear:(BOOL)animated{ [super viewDidAppear:animated]; // 禁用 iOS7 返回手势 if ([self.navi ...

  10. Twig---基本使用

    三种特殊语法: {{ … }}   “说些什么”:输出一个变量值或者一个表达式的结果到模板.如:{{ item.username }}. twig也包含filters,它可以在模板渲染之前改变输出内容 ...