用百度,用google都搜索遍了,郁闷死了,到底在哪儿写呀。我刚才进sql05 ——》 某个数据库里 ——》可编程性 ——》数据库触发器,点右键就有一个“刷新”,没新建呀。进sql05 ——》 服务器对象 ——》触发器,这里也没有呀,点右键仍旧只有一个“刷新”,没新建呀。我刚才在存储过程里写了一个最简单的,尝试尝试,执行成功后,竟然找不到了,纳闷了~还有,我刚才写的是最最简单的触发器。谁能帮我写个呀,例如某数据库里有两个表,a表,b表,结构都一模一样。a表如果被新增一条记录,b表也新增一条一模一样的(也许业务上说不过去,我只是做测试和学习用的)。百度google了一下午,全是没用的信息,什么异步,还有更复杂的,表结构之类的触发器。我就要最简单的这种都搜索不到,难道是我的关键字不对,“sql05怎么创建触发器”,“sql05触发器”,“sql2005建立触发器”十分感谢,200分不够,我再加。~
On Student
As
if Update(StudentID)
begin Update StudentNew
Set br.StudentID=i.StudentID
From BorrowRecord br , Deleted d ,Inserted i
Where br.StudentID=d.StudentID end
和新建一个查询,然后再写上触发器是一样的..只是前者,编辑器帮你写了个开头而已..
create trigger trig_insert_ta on ta
for insert
as
insert b select * from inserted
这是用SQL直接建触发器,要在查询分析器里选中对应的数据库执行。
把上面的表换成你的对应表。
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER TRIGGER [dbo].[TR_TABLE_TEST] ON [dbo].[tb_Organ] FOR INSERTAS
BEGININSERT INTO [ComentSolution].[dbo].[tb_User]
([Name])
VALUES
(
SELECT TOP 1 [Name] FROM [dbo].[tb_Organ] ORDER BY ID DESC
)END
消息 156,级别 15,状态 1,过程 TR_TABLE_TEST,第 16 行
关键字 'SELECT' 附近有语法错误。
消息 102,级别 15,状态 1,过程 TR_TABLE_TEST,第 17 行
')' 附近有语法错误。
INSERT INTO 表(列1,列2) VALUES(值1,值2);2
INSERT INTO 表(列1,列2) SELECT 值1,值2 FROM 表;
BEGININSERT INTO [ComentSolution].[dbo].[tb_User]
([Name])
SELECT TOP 1 [Name] FROM [dbo].[tb_Organ] ORDER BY ID DESC END
BEGININSERT INTO [ComentSolution].[dbo].[tb_User]
([Name])
SELECT [Name] FROM inserted
END
create table test(ID int,NAME varchar(10),NodeType int,ParentPath varchar(10),Child int,arrChildID varchar(20))
gocreate trigger trg_test on test for insert
as
begin
update a
set
Child =a.Child+1,
arrChildID=a.arrChildID+','+rtrim(b.ID)
from
test a,inserted b
where
charindex(',',b.ParentPath)>0
and
cast(a.ID as varchar)=reverse(left(reverse(b.ParentPath),charindex(',',reverse(b.ParentPath))-1))
end
goinsert into test select 1,'新闻中心',1,'0', 0,'1' --Child,arrChildID 让触发器自动维护
insert into test select 2,'图片中心',1,'0', 0,'2'
insert into test select 3,'软件中心',1,'0', 0,'3'
insert into test select 4,'国内新闻',1,'0,1',0,'4'
insert into test select 5,'娱乐新闻',1,'0,1',0,'5'
insert into test select 6,'体育新闻',1,'0,1',0,'6'
insert into test select 7,'热点新闻',1,'0,1',0,'7'
goselect * from test
/*
ID NAME NodeType ParentPath Child arrChildID
----------- ---------- ----------- ---------- ----------- --------------------
1 新闻中心 1 0 4 1,4,5,6,7
2 图片中心 1 0 0 2
3 软件中心 1 0 0 3
4 国内新闻 1 0,1 0 4
5 娱乐新闻 1 0,1 0 5
6 体育新闻 1 0,1 0 6
7 热点新闻 1 0,1 0 7
*/
godrop trigger trg_test
drop table test
go
BEGININSERT INTO [ComentSolution].[dbo].[tb_User]
([Name])SELECT TOP 1 [Name] FROM [dbo].[tb_Organ] ORDER BY ID DESC
END