测试人员要掌握的基本的SQL语句(上)
测试人员要掌握的基本的SQL语句(上)
MSN:nanans126@hotmail.com
2008-11-14 Nancy
目录
一、DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
二、DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
三、DCL—数据控制语言(GRANT,REVOKE)
四、下半部分内容(主要是PL/SQL:函数,存储过程,事务等)
说明:本文档的使用对象是对SQL有一些了解的软件测试人员,我只是把我知道的知识结合网上的资料进行二次总结,不正之处望多请教。本文档配置附有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 s
相关文档:
向高手请教一个问题:
当我执行:
use master
exec xp_cmdshell 'osql /S musqlserver /U sa /P mypwd /d haodb /Q "select top 10 * from trandetail" /o C:\my1.xls'
以上执行成功,会产生新文件:C:\my1.xls'
然后我想将此文件直接copy到另一台电脑中[已建连接]
执行
......
自连接是指一个表与其自身进行连接。
举一个简单的实例,一个学生课程成绩表StudentScore,其中包括学生编号/studentid,所选课程/coursename,课程成绩/score
选择每门课程的前两名学生,并将他信息输出出来
此时你的第一反应就是要把学生按所选课程进行分组,然后比较获得每门课程里面前两位的学生
分组的方式有group b ......
从功能上划分,SQL语言可以分为DDL,DML和DCL三大类。
1. DDL(Data Definition Language)
数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 ;
CREATE---创建表
ALTER---修改表
  ......
-- 一: 处理未查到的空值
select
case when exists(select EndPrice from T_stock where BOMSN='0109')
then (select EndPrice from T_stock where BOMSN='0109')
else 0 end
--二:更新字段值
--strNum 数量
--strId 序号
update T_buy_Pro set Co ......