我的口号是:多分享,多进步,多快乐!!!

测试人员要掌握的sql一

上一篇 / 下一篇  2013-09-07 20:52:10 / 个人分类:数据库知识

测试人员要掌握的基本的SQL语句                                           

                                       

目录  
一、DDL—数据定义语言(CREATE
ALTERDROPDECLARE)  
二、DML—数据操纵语言(SELECT
DELETEUPDATEINSERT)  
三、DCL—数据控语言(GRANT
REVOKE)

四、下半部分内容(主要是PL/SQL:函数,存储过程,事务等)
一、DDL数据定义语言

首先,简要介绍基础语句,作为测试人员一般测试时,已经由数据库设计师建好了数据库,数据库设计师可能也不用语句的方式来建表,但我们应该能看懂各语句的使用格式,语句的含义,有兴趣再作深入了解。


1
、创建数据库
CREATE DATABASE [database-name] 


2
、删除数据库
DROP DATABASE dbname1,dbname2…

 
3
、备份数据库
---
创建备份数据的device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
---
开始备份
BACKUP DATABASE pubs TO testBack  


4
、创建表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)

例如:CREATE TABLE S

(SNO CHAR(10) NOT NULL ,

SN VARCHAR(20),

AGE INT,

SEX CHAR(2) DEFAULT '' ,

DEPT VARCHAR(20));


根据已有的表创建新表:  
A
create table tab_new like tab_old (使用旧表创建新表)
B
create table tab_new as select col1,col2… from tab_old definition only


5
、删除表

drop table tabname  


6
、增加字段
Alter table tabname

ADD <列名><数据类型>[NULL|NOT NULL]

7、修改字段

 ALTER TABLE<表名>

ALTER COLUMN <列名><数据类型>[NULL|NOT NULL]


8
、删除字段

ALTER TABLE<表名>

DROP COLUMN <列名><数据类型>[NULL|NOT NULL]

 

9、添加主键

 Alter table tabname add primary key(col)  

 

10、删除主键

Alter table tabname drop primary key(col)  


11
、创建索引

create [unique] index idxname on tabname(col….)  

 

12、删除索引

drop index idxname
注:索引是不可更改的,想更改必须删除重新建。


13
、创建视图

create view viewname as [select statement ]


14
、删除视图

drop view viewname

 

二、DML—数据操纵语言

 

1、数据查询

数据查询是数据库中最常见的操作。在本文档里将作重点介绍。SQL语言提供SELECT语句,通过查询操作可得到所需的信息。

SELECT语句的一般格式为:

SELECT〈列名〉[{,〈列名〉}]

FROM〈表名或视图名〉[{,〈表名或视图名〉}]

[WHERE〈检索条件〉]

[GROUP BY <列名1>[HAVING <条件表达式>]]

[ORDER BY <列名2>[ASC|DESC]];

SELECT语句的执行过程:

根据WHERE子句的检索条件,从FROM子句指定的基本表或视图中选取满足条件的元组,再按照SELECT子句中指定的列,投影得到结果表。

如果有GROUP子句,则将查询结果按照<列名1>相同的值进行分组。

如果GROUP子句后有HAVING短语,则只输出满足HAVING条件的元组。

如果有ORDER子句,查询结果还要按照<列名2>的值进行排序。

1.1、查询指定列

SELECT <列名> FROM <表名或视图名>

 

1.2、查询全部列

SELECT * FROM <表名或视图名>

SELECT <全部列名> FROM <表名或视图名>

 

1.3、取消相同取值的行

在查询结果中有可能出现取值完全相同的行了。

SELECT DISTINCT <列名> FROM <表名或视图名>

 

1.4、比较大小

比较运算符有   =>>=<=<<>!>!<

NOT+上述比较运算符

SELECT <列名> FROM <表名或视图名> WHERE <列名> [比较运算符] <比较的值>

 

1.5、多重条件查询

WHERE子句需要指定一个以上的查询条件时,则需要使用逻辑运算符ANDORNOT将其连结成复合的逻辑表达式。

其优先级由高到低为:NOTANDOR,用户可以使用括号改变优先级。

SELECT <列名> FROM <表名或视图名> WHERE <条件1> AND <条件1> OR <条件1>…


TAG:

luhuifang2013的个人空间 引用 删除 luhuifang2013   /   2013-09-09 10:08:21
5
 

评分:0

我来说两句

Mrsjjl

Mrsjjl

Hello everyone,my name is jiangjiliang,welcome to personal space!!!

日历

« 2024-05-09  
   1234
567891011
12131415161718
19202122232425
262728293031 

我的存档

数据统计

  • 访问量: 59489
  • 日志数: 65
  • 建立时间: 2013-09-07
  • 更新时间: 2013-09-11

RSS订阅

Open Toolbar