存储过程入门教程1
存储过程入门
存储过程(Procedure)作程序开发的人来说是不会陌生的,最近刚好写一个项目时用到了存储过程,特把它贴出来,对入门的同学来说很有用滴!!
table如下:
use byCms
create table By_Douan(id int identity(1,1),idAdr nvarchar(20),sClass nvarchar(20),sCount nvarchar(20),iCount int default 1,sUser nvarchar(20) default 'byError',sTime datetime default getdate())
第一个存储过程作用是判断某字段值是否存在,存在则update,不存在则insert
create procedure [dbo].[proc_by_DoBan]
@sIDAdr varchar(20),
@sClass varchar(20),
@sCount varchar(20),
@sUser varchar(20)
as
begin
--create table By_Douan(id int identity(1,1),idAdr nvarchar(20),sClass nvarchar(20),sCount nvarchar(20),sUser nvarchar(20) default 'byError',sTime datetime default getdate())
if exists(select * from by_DoBan where idAdr=@sIDAdr and sClass=@sClass)
begin
update by_Douan set sCount=@sCount,sUser=@sUser,sTime=getdate(),iCount=iCount+1
end
else
begin
insert into by_Douan(idAdr,sClass,sCount,sUser)values(@sIDAdr,@sClass,@sCount,@sUser)
end
end
第二个存储过程作用是判断某字段值是否存在 select 1,select 0 是返回值。select 0当然返回的是0了。
create procedure dbo.proc_by_Douan_Exists
@sIdAdr nvarchar(20),
@sClass nvarchar(20)
as
if exists(select * from by_douan where IDAdr=@sidadr and sClass=@sClass)
select 1
else
select 0
怎么样,简单吧!!
对于已发过的,进行提示。
ckInform的作用是有时几天才发一次,可以考滤不限制重发。
对于重发,应以最新的data来检索,其实可以在每次插入时检测有没有,有的话就直接update(用存储过程)
source=simple&form_email=302777528%40qq.com@qq.com&form_password=205205&captcha-solution=again&captcha-id=ntAWi0yuj8EE6htmPqygXWi2&user_login=%E7%99%BB%E5%BD%95source=simple&form_email=302777528%40qq.com&form_password=205205&captcha-solution=again&captcha-id=ntAWi0yuj8EE6htmPqygXWi2&user_login=%E7%99%BB%E5%BD%95
评论已关闭