1.定义变量:declare @name varchar(20) 用declare定义一个名字为name的字符串类型的变量,变量前面需要加@
2.为变量赋值:set @name = '%奥迪%' ,用set来进行赋值操作(也可以用select)这里的值可以是一个值也可以是从数据库中查询出的值或表达式
3.编程:declare @name varchar(20)
set @name = '%奥迪%'
select * from car where name like @name
这三条语句就可以从car表中选出名字中含奥迪的车
定义一个名字为avg的变量,查询出所有车的价格平均值赋给avg,输出的时候字符串和小数类型不能一起打印,所以要用cast来转换为字符串类型的
declare @avg float
select @avg = avg(price) from car
print '所有汽车的平均价格是:'+cast(@avg as varchar(20))
if语句,if语句后面要跟begin和end,相当于cshap里面的大括号
declare @find varchar(20)
set @find='宝马'
if(@find='宝马')
begin
print '宝马汽车'
select * from Car where name like '%'+@find+'%'
end
else
begin
print '其它汽车'
select * from Car
end
定义购买数量,和需要购买的水果名字,将库存放到变量kc里面,判断如果购买数量小于库存就可以购买
并且将数据库内的numbers减去购买掉的数量,并且显示出来
else如果购买数量大于库存就显示库存不足
declare @buycount int,@fruitname varchar(20)
set @buycount = 80
set @fruitname = '菠萝'
declare @kc int
select @kc = numbers from fruit where name=@fruitname
if @buycount < @kc
begin
print '可以购买'
update fruit set numbers = numbers-@buycount where name=@fruitname
select * from fruit where name=@fruitname
end
else
begin
print '库存不足'
end
在数据库的编程中while循环一般用不到,因为数据库对数据的操作是以集合形式的操作,不需要循环来做,在if语句后面的程序体一定记得加begin和end
如果涉及到修改数据库中内容的时候,最好是在程序前面加begin tran后面加rollback,如果出现程序错误以便进行回滚操作