『壹』 sqlserver 鏈接伺服器調用存儲過程
加入 我創建一個存儲過程:
create porc AB_CDE
@A int,
@B int
as
這裡面就是內容了
就在陣容裡面具體 操作 存儲過程~~~~~~~~
給一個例子:
--插入時要判斷是否重復插入
declare @id int
declare @sNo varchar(100)
declare @sName varchar(100)
declare @sex varchar(10)
declare @jiguan varchar(100)
declare @gongzuodanwei varchar(200)
declare @wu varchar(100)
declare @tongxundi varchar(200)
declare @youzhengbianma varchar(100)
declare @lianxidianhua varchar(100)
declare @yidongdianhua varchar(100)
declare @dianziyouxiang varchar(100)
declare @shenfenzheng varchar(100)
declare @chushengriqi datetime
declare @xueli varchar(100)
declare @biyexuexiao varchar(100)
declare @biyezhuanye varchar(100)
declare @biyenianyue datetime
declare @xuewei varchar(100)
declare @mingzhu varchar(100)
declare @zhengmianmao varchar(100)
declare @regDate datetime
declare @result int
set @result=0
set @regDate=getdate()
begin tran
declare cur cursor for select 學號,姓名,性別,籍貫,工作單位,職務,通訊地址,郵政編碼,聯系電話,行動電話,電子郵箱,身份證號碼,出生日期,學歷,畢業學校,畢業專業名稱,畢業年月,學位,民族,政治面貌 from #tmp
open cur
fetch next from cur into @sNo,@sName,@sex,@jiguan,@gongzuodanwei,@wu,@tongxundi,@youzhengbianma,@lianxidianhua,@yidongdianhua,@dianziyouxiang,@shenfenzheng,@chushengriqi,@xueli,@biyexuexiao,@biyezhuanye,@biyenianyue,@xuewei,@mingzhu,@zhengmianmao
while @@fetch_status=0
begin
--學生在學生表中不存在才插入
if not exists (select 1 from vtd02 where 學號=@sNo)
begin
--插入學生資料
exec @id=PTD02_Insert @F01=@sName,@F02=@sex,@F36=@sNo,@FIDTB01=@classId,@F32=10,@F05=@jiguan,
@F17=@gongzuodanwei,@F15=@wu,@F11=@tongxundi,
@F07=@youzhengbianma,@F10=@lianxidianhua,@F09=@yidongdianhua,
@F08=@dianziyouxiang,@F18=@shenfenzheng,@F06=@chushengriqi,
@F43=@xueli,@F12=@biyexuexiao,@F13=@biyezhuanye,
@F14=@biyenianyue,@F44=@xuewei,@F04=@mingzhu,@F45=@zhengmianmao
--插入學生帳號
exec PUB02_Insert @F01=@sNo,@F02=@password,@FIDUB01=3,@FIDF03=@id,@F04=1,@F05=@regDate
fetch next from cur into @sNo,@sName,@sex,@jiguan,@gongzuodanwei,@wu,@tongxundi,@youzhengbianma,@lianxidianhua,@yidongdianhua,@dianziyouxiang,@shenfenzheng,@chushengriqi,@xueli,@biyexuexiao,@biyezhuanye,@biyenianyue,@xuewei,@mingzhu,@zhengmianmao
end
else
begin
fetch next from cur into @sNo,@sName,@sex,@jiguan,@gongzuodanwei,@wu,@tongxundi,@youzhengbianma,@lianxidianhua,@yidongdianhua,@dianziyouxiang,@shenfenzheng,@chushengriqi,@xueli,@biyexuexiao,@biyezhuanye,@biyenianyue,@xuewei,@mingzhu,@zhengmianmao
end
end
close cur
deallocate cur
if @@error<>0 rollback tran
commit tran
上面比如是一個存儲過程。
然後: exec PUB02_Insert @F01=@sNo,@F02=@password,@FIDUB01=3,@FIDF03=@id,@F04=1,@F05=@regDate
這個就是在上面掉用的存儲過程。 exec 存儲過程name 具體參數
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
vaela
『貳』 存儲過程可以在當前伺服器中任意調用嗎
可以在同一伺服器下跨資料庫調用存儲過程,用exec語句可以 達到你想要的效果。
具體的你可以看一些存儲過程的sql 語法。