太原软件测试培训
达内太原软件测试培训中心

0351-5618167

热门课程

达内软件测试培训—SQL速学篇(6)

  • 时间:2016-04-25 16:02
  • 发布:太原软件测试培训
  • 来源:互联网

软件测试是门大学问,要想学好不是一朝一夕的事,达内软件测试培训就像领路人,带你走上这条大道,但师傅领进门,修行在个人,学习是件持之以恒的事,今天就和大家分享关于软件测试的一些知识。

SQL是用来做什么的呢?

一个最常用的方式是将资料从数据库中的表格内选出。从这一句回答中,我们马上可以看到两个关键字:从(FROM)数据库中的表格内选出(SELECT)。(表格是一个数据库内的结构,它的目的是储存资料。在表格处理这一部分中,我们会提到如何使用SQL来设定表格。)我们由这里可以看到最基本的SQL架构:

二十七、CREATE TABLE

虽然许多数据库工具可以让您在不需用到SQL的情况下建立表格,不过由于表格是一个最基本的架构,可以了解下

在我们跳入CREATE TABLE的语法之前,我们最好先对表格这个东西有些多一点的了解。表格被分为栏位(column)及列位(row)

每一列代表一笔资料,而每一栏代表一笔资料的一部份。举例来说,如果我们有一个记载顾客资料的表格,那栏位就有可能包括姓、名、地址、城市、国家、生日...等等。当我们对表格下定义时,我们需要注明栏位的标题,以及那个栏位的资料种类。

那,资料种类是什么呢?资料可能是以许多不同的形式存在的。它可能是一个整数(例如1),、一个实数(例如0.55)、一个字串

(例如'sql')、一个日期/时间(例如'2000-JAN-25 03:22:22')、或甚至是

以二进法(binary)的状态存在。当我们在对一个表格下定义时,我们需要对每一个栏位的资料种类下定义。(例如'姓'这个栏位的资料种类是

char(50)━━代表这是一个50

个字符的字串)。我们需要注意的一点是不同的数据库有不同的资料种类,所以在对表格做出定义之前最好先参考一下数据库本身的说明。

CREATE TABLE的语法是:

CREATE TABLE "表格名"

("栏位1" "栏位1资料种类",

"栏位2" "栏位2资料种类",

... );

我们想新建一个学生信息表(t_info),记录学生的姓名(name)、编号(number)、班级(class)信息,设置编号(number)为主键

CREATE TABLE `s_info` (

`name` varchar(11) DEFAULT NULL,

`number` char(10) NOT NULL,

`class` varchar(11) DEFAULT NULL,

PRIMARY KEY (`number`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

当然,新建一张表也可以在可视化工具上直接创建,更直观一些

太原达内软件测试培训

创建后,右键查看对象信息,DDL显示

太原达内软件测试培训

二十八、ALTER TABLE

在表格被建立在资料库中后,我们常常会发现,这个表格的结构需要有所改变。常见的改变如下:               

加一个栏位               

删去一个栏位                    

改变栏位名称                    

改变栏位的资料种类               

以上列出的改变并不是所有可能的改变。ALTER TABLE也可以被用来作其他的改变,例如改变主键定义。

ALTER TABLE的语法如下:            

ALTER TABLE "table_name"

[改变方式];

[改变方式]的详细写法会依我们想要达到的目标而有所不同。再以上列出的改变中,[改变方式]如下:              

加一个栏位:  ADD "栏位1" "栏位1资料种类"                

删去一个栏位:  DROP "栏位1"            

改变栏位名称:  CHANGE "原本栏位名" "新栏位名" "新栏位名资料种类"               

改变栏位的资料种类:  MODIFY "栏位1" "新资料种类"           

1)ADD新增一个字段

在学生信息表(t_info)中插入学生的班级信息(grade)

alter table s_info add grade char(20)

太原达内软件测试培训

执行后效果如下图:

太原达内软件测试培训

2)DROP删除一个字段

删除s_info表中grade字段

alter table s_info drop grade

太原达内软件测试培训

3)CHANGE更新字段名称

将number字段名称更改为num

alter table s_info change number num varchar(11)

太原达内软件测试培训

4)MODIFY更改字段类型属性

将学生编号(num)字段属性改成char(10)

alter table s_info modify num char(10)

太原达内软件测试培训

二十九、主键Primary Key

主键(Primary Key)

中的每一笔资料都是表格中的唯一值。换言之,它是用来独一无二地确认一个表格中的每一行资料。主键可以是原本资料内的一个栏位,或是一个人造栏位

(与原本资料没有关系的栏位)。主键可以包含一或多个栏位。当主键包含多个栏位时,称为组合键(Composite Key)。

主键可以在建置新表格时设定(运用CREATE TABLE语句),或是以改变现有的表格架构方式设定(运用ALTER TABLE)。

在创建表格的同时,设置number为主键

CREATE TABLE `s_info` (

`name` varchar(11) DEFAULT NULL,

`number` char(10) NOT NULL,

`class` varchar(11) DEFAULT NULL,

PRIMARY KEY (`number`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

也可以用alter table方式新增num为主键

太原达内软件测试培训

三十、DROP TABLE

有时候我们会决定我们需要从数据库中清除一个表格。事实上,如果我们不能这样做的话,那将会是一个很大的问题,因为数据库管理师(Database Administrator -- DBA)势必无法对数据库做有效率的管理。还好,SQL有提供一个DROP TABLE的语法来让我们清除表格。DROP TABLE的语法是:

DROP TABLE "表格名";

我们如果要删除学生信息表s_info

drop table s_info;

TRUNCATE

有时候我们会需要清除一个表格中的所有资料。要达到者个目的,一种方式是我们在SQL DROP那一页看到

的DROP TABLE指令。不过这样整个表格就消失,而无法再被用了。另一种方式就是运用TRUNCATE TABLE的指令。在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。TRUNCATE TABLE的语法为下:

TRUNCATE TABLE "表格名";

如果要清空学生信息表s_info

truncate table s_info;

到这里SQL的基本语法就已经学的差不多了

总结回顾下SQL语法:

Select

SELECT "栏位" FROM "表格名";

Distinct

SELECT DISTINCT "栏位"

FROM "表格名";

Where

SELECT "栏位"

FROM "表格名"

WHERE "条件";

And/Or

SELECT "栏位"

FROM "表格名"

WHERE "简单条件"

{[AND|OR] "简单条件"}+;

In

SELECT "栏位"

FROM "表格名"

WHERE "栏位" IN ('值1', '值2', ...);

Between

SELECT "栏位"

FROM "表格名"

WHERE "栏位" BETWEEN '值1' AND '值2';

Like

SELECT "栏位"

FROM "表格名"

WHERE "栏位" LIKE {模式};

Order By

SELECT "栏位"

FROM "表格名"

[WHERE "条件"]

ORDER BY "栏位" [ASC, DESC];

Count

SELECT COUNT("栏位")

FROM "表格名";

Group By

SELECT "栏位1", SUM("栏位2")

FROM "表格名"

GROUP BY "栏位1";

Having

SELECT "栏位1", SUM("栏位2")

FROM "表格名"

GROUP BY "栏位1"

HAVING (栏位);

Create Table

CREATE TABLE "表格名"

("栏位1" "栏位1资料种类",

"栏位2" "栏位2资料种类",

... );

Drop Table

DROP TABLE "表格名";

Truncate Table

TRUNCATE TABLE "表格名";

Insert Into

INSERT INTO "表格名" ("栏位1", "栏位2", ...)

VALUES ("值1", "值2", ...);

Update

UPDATE "表格名"

SET "栏位1" = [新值]

WHERE "条件";

Delete From

DELETE FROM "表格名"

WHERE "条件";

太原达内软件测试培训机构是排名高端的软件测试培训品牌;参加软件测试培训、软件测试工程师培训就到达内软件测试培训班!

免费预约企业总监级讲师试听课

怕钱不够?就业挣钱后再付学费!     怕学不会?0基础入学,达内定制课程!     担心就业?近12万家雇主企业,推荐名企就业!

上一篇:初中生参加达内网络营销培训,成功入行改变苦力命运
下一篇:接口测试第五课(http headers)

达内软件测试培训—SQL速学篇(6)

太原达内软件测试培训—SQL速学篇(4)

达内软件测试培训—SQL速学篇(3)

达内软件测试培训—SQL速学篇(2)

选择城市和中心
贵州省

广西省

海南省