① 如何用觸發器調用存儲過程!!
create trigger [owner.]trigger_name
on[owner.]table_name
{for insert}
as
sql_statement
順便問下:你的rollback怎麼寫在begin里了
② SQLsever中如何在觸發器當中傳入參數給存儲過程
在觸發器中直接調用存儲過程不可以嗎
exec 存儲過程的名字
③ sqlserver觸發器中如何調用外部程序
--調用外部程序或者命令 exec xp_cmdshell 'dir c:\' 注意不能調用需要用戶干預才能繼續運行的程序. 使用Sqlserver的xp_CmdShell擴展存儲過程的一個注意: 這個存儲過程只能執行Dos控制台程序,其他的Exe程序不能在Sqlserver進程空間執行. 但外部程式必須是一個自生滅的程式(即沒有消息循環、不需要與用戶交互),否則將會進入死循環中。
④ 如何在觸發器中調用存儲過程
在觸發器中調用存儲過程:
CREATEtriggermalice
onBBSUser
forupdate
as
ifupdate(receive)--當receive欄位發生update事件時觸發
begin
updatebbsuser
setreceive_temp=bu.receive_temp+(i.receive-d.receive)
frombbsuserbu,deletedd,insertedi
wherebu.userid=i.userid
declare@tempfloat,@scopefloat
set@temp=(selectbb.receive_tempfrombbsuserbb,deleteddwherebb.userid=d.userid)
set@scope=(selectbb.receive_scopefromBBSUserbb,deleteddwherebb.userid=d.userid)
if@temp<=@scope
updateuserinfo
setstandnumber=bu.standnumber+(i.receive-d.receive)
fromuserinfobu,deletedd,insertedi
wherebu.userid=d.userid
declare@userint,@comfloat
select@user=d.userid,@com=us.standnumber
fromUserInfous,Deletedd,Insertedi
whereus.userid=d.userid
exectimely@user,@com
if@temp>@scope
begin
updateuserinfo
setstandnumber=bu.standnumber+(@scope-d.receive)
fromuserinfobu,deletedd,insertedi
wherebu.userid=d.userid
updatebbsuser
setreceive_temp=@scope
frombbsuserbu,deletedd
wherebu.userid=d.userid
select@user=d.userid,@com=us.standnumber
fromUserInfous,Deletedd,Insertedi
whereus.userid=d.userid
exectimely@user,@com
end
end
⑤ 觸發器調用存儲過程的問題,急!
觸發器在對標進行更新操作過程中,是被鎖住的,不允許對本表進行訪問,直到事務完成
⑥ SQL SERVER 2008 觸發器中怎麼將參數傳遞給存儲過程中的輸入參數@sno
你可以在觸發器上調用存儲過程,
觸發器中有兩個臨時表inserted 和deleted ,這兩個表的表結構和創建觸發器的表是一樣的,
inserted表存的是當前插入或更新後的值,
deleted表存的是當前刪除或修改前的值.
你可以利用以上兩個臨時表的值來獲得你要的參數值,然後調用時傳入存儲過程
另外你也可以直接在觸發器中操作,不用存儲過程。
⑦ mysql資料庫觸發器與存儲過程互相調用
存儲過程有問題,使用的是SQLSERVER的語法。
⑧ 使用SQLServer查詢分析器創建存儲過程和觸發器
sql server 2000 第8章及第九章課後習題答案.
⑨ sql server2000 中觸發器怎麼調用存儲過程
試試看,我沒調試。
CREATE
procere
dbo.UGetName
@mid
varchar
as
set
nocount
on
begin
declare
@mname
(10)
if
exists(select
top
1
hname
from
dbo.tableaa
where
mmid=@mid
)
select
@mname=hname
from
dbo.tableaa
where
mmid=@mid
return
@mname
end
go
⑩ SQLserver 資料庫觸發器 存儲過程問題
添加的:
CREATE
TRIGGER
trig_xx_add
ON
[Table1]
AFTER
UPDATE,INSERT
AS
BEGIN
INSERT
INTO
[Table2]
([Proct])
SELECT
[Proct]
FROM
inserted
WHERE
NOT
EXISTS(SELECT
1
FROM
[Table2]
WHERE
[Proct]=inserted.[Proct])
END
假設你的id都是identity,
如果不是的話根據自己的需要進行修改
刪除的也類似,
但是不知道你的需求是什麼