实验10 TSQL语言编程基础.docx
- 文档编号:10924452
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:13
- 大小:128.86KB
实验10 TSQL语言编程基础.docx
《实验10 TSQL语言编程基础.docx》由会员分享,可在线阅读,更多相关《实验10 TSQL语言编程基础.docx(13页珍藏版)》请在冰豆网上搜索。
实验10TSQL语言编程基础
实验十T-SQL语言编程基础
姓名:
学号:
专业:
网络工程
班级:
同组人:
无
实验日期:
2012-4-19
【实验目的与要求】
1.熟练掌握变量的定义和赋值。
2.熟练掌握各种运算符。
3.熟练掌握流程控制语句,尤其是条件语句和循环语句。
【实验内容与步骤】
10.1.变量的定义与输出
1.变量的定义和赋值
1)局部变量的声明:
DECLARE@variable_nameDataType
例如:
declare@stunamevarchar(20)--声明一个存放学员姓名的变量stuname.
declare@stuseatint--声明一个存放学员座位号的变量stuseat
2)局部变量的赋值:
局部变量的赋值有两种方法:
a)使用Set语句
Set@variable_name=value
b)使用Select语句
Select@variable_name=value
实验:
运行以下程序段,理解变量的使用。
--局部变量的赋值与使用
declare@customer_namevarchar(20)--声明变量用来存放客户名称
set@customer_name='家电市场'--使用SET语句给变量赋值
select*
fromxss
where客户名称=@customer_name--通过局部变理向sql语句传递数据
请给出运行结果:
练习:
创建一名为Product_name的局部变量,并在SELECT语句中使用该变量查找“冰箱”的”价格”和”库存量”。
给出相应的语句
declare@Product_namevarchar(20)
set@Product_name='冰箱'
select价格,库存量
fromCP
where产品名称=@Product_name
请给出运行测试结果:
2.两种输出语句:
1)Print输出单个的局部变量或字符串表达式.如:
PRINT'价格合理';
2)Select局部变量as自定义别名。
3.全局变量:
1)SQLServer2005中的所有全局变量都使用两个@@标志作为前缀.
常见全局变量
变量
含义
@@ERROR
最后一个T-SQL错误的错误号
@@IDENTITY
最后一次插入的标识值
@@LANGUAGE
当前使用的语言的名称
@@MAX_CONNECTIONS
可以创建的同时连接的最大数目
@@ROWCOUNT
受上一个SQL语句影响的行数
@@SERVERNAME
本地服务器的名称
@@SERVICENAME
此计算机上的SQL服务的名称
@@TRANSCOUNT
当前连接打开的事务数
@@VERSION
SQLServer的版本信息
@@TIMETICKS
当前计算机上的每刻度的微秒数
2)全局变量的使用
运行以下程序段,理解全局变量的使用。
usecpxs
go
select*fromcp
insertintocpvalues('0221055','爱多VCD',2326,12)
select当前的错误号=@@error
--0
updateCPset库存量=120where产品编号='0221055'
print'当前的错误号'+convert(varchar(20),@@error)
--当前的错误号
select更新的产品编号=@@identity
--6
select当前使用的语言的名称=@@language
--简体中文
select本地服务器的名称=@@servername
--DEMONSTRATOR
select此计算机上SQL服务的名称=@@servicename
--MSSQLSERVER
selectSQLServer的版本信息=@@version
给出运行结果:
10.2.条件结构
1.在查询分析器中执行下面的语句,体会IF...ELSE...结构
DECLARE@Pricefloat
SELECT@Price=价格FROMCPWHERE产品编号='100002'
IF@Price>=3000
PRINT'价格偏高'
ELSE
PRINT'价格合理'
PRINT'价格为:
'+CONVERT(CHAR(5),@Price)
给出运行结果:
2.练习:
自己编写一段程序判断CP表中价格与平均值的比较,将低于平均值的数据行输出来。
给出相应的语句段和运行结果:
declare@Avg_pricefloat
select@Avg_price=avg(价格)fromCP
select产品均价=@Avg_price
print'产品均价是:
'+convert(char(20),@Avg_price)
select*
fromCP
where价格<@Avg_price
10.3.循环结构
1.下面是计算1~100和的循环结构,执行之,体会循环结构程序。
(注意语句块标志BEGIN...END)
DECLARE@SUMINT,@IINT
SELECT@I=1,@SUM=0
WHILE@I<=100
BEGIN
SELECT@SUM=@SUM+@I
SELECT@I=@I+1
END
PRINT'1...100的和为:
'+CONVERT(CHAR(4),@SUM)
给出运行结果:
2.练习:
编写一个程序用于计算10的阶乘
给出相应的程序和运行结果:
DECLARE@SUMINT,@IINT
SELECT@I=1,@SUM=1
WHILE@I<=10
BEGIN
SELECT@SUM=@SUM*@I
SELECT@I=@I+1
END
PRINT'10的阶乘为:
'+CONVERT(CHAR(20),@SUM)
10.4.完成以下T-SQL语言编程
(1)用T-SQL语言编程输出3~300之间能被7整除的数。
给出相应的程序和运行结果:
DECLARE@IINT
SELECT@I=3
WHILE@I<=300
BEGIN
if(@I%7=0)
print''+convert(char(4),@I)
SELECT@I=@I+1
END
(2)用T-SQL语言编程输出3~100之内的素数。
给出相应的程序和运行结果:
declare@aint,@bint,@cint
set@a=3
set@b=2
while(@a<100)
begin
set@c=sqrt(@a)
while(@b<=@c)
begin
if(@a%@b=0)
break
if(@b=@c)
print'素数:
'+convert(char(4),@a)
set@b=@b+1
end
set@a=@a+1
end
(3)在CP表中查找名为”长虹彩电”的产品,如果存在,则显示该产品的信息;否则,显示”查无此产品”。
给出相应的程序和运行结果:
declare@xnchar(30)
set@x='长虹彩电'
ifexists(select*
fromCP
where产品名称=@x
)
select*
fromCP
where产品名称=@x
else
print'查无此产品'
(4)查看有无客户编号为”000004”的销售记录,如果有,则显示“有”,并查询显示该客户销售的产品信息。
给出相应的程序和运行结果:
declare@khnchar(10),@cpbchar(10)
set@kh='000004'
ifexists(select产品编号
fromCPXSB
where客户编号=@kh
)
print'有'
select@cpb=产品编号
fromCPXSB
where客户编号=@kh
select*
fromCP
where产品编号=@cpb
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验10 TSQL语言编程基础 实验 10 TSQL 语言 编程 基础
![提示](https://static.bdocx.com/images/bang_tan.gif)