sql编程

本文介绍了SQL的基础概念和技术,包括函数、触发器、变量定义等,并详细解释了如何创建表变量、使用临时表、实现循环表等功能,同时涵盖了存储过程、表函数、视图的创建与使用。

1、函数:不能改变任何数据,只能给一个数据,返回数据,即查询功能

2、触发器:存储过程中自动执行(系统已不用,项目开发部还是在用),e开头的都是带触发器的视图。

3、定义变量:(不加@,即为游标)

--变量在若干情况下需要初始化
declare @i varchar(2000)
set @i=''
select @i=@i+username+';' from myUser where UserName is not null
print @i

4、定义表变量:

DECLARE @变量名  TABLE(列名1 类型,列名2,类型……)
DECLARE @CstTemp TABLE 
 (
      CstGUID varchar(40),
      CstName varchar(10)
)

5、临时表:

使用select into,存在内存不用需要dorp掉 ,表名前加#
select identity(int,1,1)as id
, buguid,buname 
into #t from mybusinessunit

6、循环表:

declare @i int
select @i=count(*) from #t
declare @j int
set @j=1
declare @s varchar(2222)
while @j<=@i
 begin
  select @s=buname from #t where id=@j
  print @s
  set @j=@j+1
 end

7、exec执行sql:使用程序拼出sql

exec('declare @i int set @i=5 print @i')

 8、表函数:

create function f1(@a int,@b int)
returns int
as
begin
 return @a+@b
end

print dbo.f1(2,3)

9、视图:(里面不允许使用 * 号),视图的增删改需要使用触发器

select view s
as
select  字段 from biao

if OBJECT_ID('te') is not null
drop view te
go
create view te
 as
 ....

 10、存储过程:

alter proc p1 (@i int=1 ,@j int output)
as 
begin 
 set @j=@i
end
declare @j1 int
exec p1 2,@j1 OUTPUT
print @j1

 

 

转载于:https://www.cnblogs.com/elevenlang/p/3492683.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值