存储过程入门教程1

warning: 这篇文章距离上次修改已过566天,其中的内容可能已经有所变动。

                                                                                                 存储过程入门

存储过程(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

none
最后修改于:2023年05月08日 08:05

评论已关闭