導航:首頁 > 創造發明 > 創造觸發器

創造觸發器

發布時間:2021-12-19 00:11:34

⑴ 創建觸發器的命令是什麼

oracle 的語法
-------------------------------------------------------------------------------------
create or replace trigger 觸發器名
before/after 觸發事件——可以是update/delete/insert
on 表名/視圖名
[for each row]——當省略為語句觸發器
[when(觸發條件)]——限定條件
begin
觸發操作
end;
-----------------------------------------------------------------------------------
instead of 觸發器——(只爭對視圖,不能用before after when,視圖沒有with check option)
create or replace trigger 觸發器名
instead of 觸發事件
on 視圖名
[for each row]
begin
觸發操作
end;

⑵ 創建一個觸發器

因為不知道你這個具體情況 所以建議你寫兩個觸發器一個insert 一個delete
create trigger [dbo].[aa_bb] on [dbo].[aa]
for insert
as
insert into bb
select * from inserted
---------------------------------------
create trigger [dbo].[aa_bb] on [dbo].[aa]
for delete
as
delete from a from bb a,inserted b where .....

⑶ SQL中,如何創建一個有條件的觸發器

以 delete 觸發為例:

createtriggertri_delete
ona--將要進行更改的表名
fordelete--給表刪除一條數據的時候觸發
as
declare@aavarchar(10)
select@aa=afromdeleted
if@aa='a'--處理的條件
begin
raiserror('錯誤',16,8)
rollbacktran
end

觸發器效果:刪除表a數據,如果a列為『a』,即阻止刪除,提示『錯誤』


⑷ 怎樣創建一個sql的觸發器

視圖是虛擬表,不能建觸發器,只能在基本表上建

⑸ 如何創建我想要的觸發器

在score加一個自增的ID作為唯一鍵
CREATE TRIGGER tr_guake
ON score
FOR INSERT
AS
Declare @id int,@chengji int

set @id=(select max(id) from score)
set @chengji=(select chengji from score where id=@id)
if @chengji<60
Begin
INSERT INTO guake(stu_id,chengji)
select stu_id,chengji from score where id=@id
End

---stu_id char (10) not null primary key, 是主鍵,但你insert的時候不正確,所以要修改,修改後就可以不要我上面那個ID了. 不過要改一下條件

⑹ 創建一個觸發器

create trigger Mytr
on 學生表
for update as
insert into 班級表(班級號)
select 班級號 from inserted
where not exists
(
select 1 from 班級表
where
班級表.班級號= inserted.班級號
)
--請注意,班級表其他欄位必須是允許null,如果有not null,請使用默認值

⑺ 觸發器的創建

create trigger stu_trg
on student
for update
as
IF(UPDATE([libraryCardNo]))--如果更新了libraryCardNo欄位
BEGIN
BEGIN TRAN
update borrowbook set libraryCardNo=inserted.libraryCardNo

IF(@@error <> 0)--如果更新不成功則回滾
BEGIN
ROLLBACK TRAN
END

ELSE
COMMIT TRAN
END
END

⑻ sql如何創建觸發器

設:該表的主鍵為[編號]

create trigger Mytr
on 數據表
for insert,delete
as
if exists(select 1 from inserted)
update 統計表
set 欄位=
統計表.欄位+a.count
from (select count(1) as count from inserted) a
if exists(select 1 from deleted)
update 統計表
set 欄位=
統計表.欄位-a.count
from (select count(1) as count from deleted) a

⑼ SQL語句創建觸發器

ROLLBACK TRANSACTION
沒有對應的BEGIN TRANSACTION
應是BEGIN TRANSACTION
IF 。。。。。
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION

END

閱讀全文

與創造觸發器相關的資料

熱點內容
經濟糾紛派出所為什麼不立案 瀏覽:32
職務侵權行為過失責任 瀏覽:621
psn期限查詢 瀏覽:189
商標侵權行為的現狀 瀏覽:954
怎樣創造資產 瀏覽:886
房屋確權登記糾紛 瀏覽:785
怎麼投訴中國聯通電話客服 瀏覽:7
產權異議登記有效期限 瀏覽:993
委託合同糾紛答辯狀 瀏覽:964
五險不夠年限 瀏覽:627
石家莊上戶口期限 瀏覽:102
汽車自燃違約侵權判決書 瀏覽:708
交通事故侵權傷者起訴狀 瀏覽:480
武威運管局投訴電話 瀏覽:927
2016最新民事訴訟期限 瀏覽:389
商標法侵權要件 瀏覽:116
工行縮短房貸年限 瀏覽:750
淘寶客服與淘寶客戶的糾紛 瀏覽:286
如何投訴電話騷擾電話 瀏覽:965
社保醫保繳費年限 瀏覽:339