ITPUB论坛 » Sybase管理与开发 » 有没有SYBASE数据表变化比较软件
新一届的微软MVP评选已经开始,欢迎各位推荐!
2008-6-30 19:39 56553655
有没有SYBASE数据表变化比较软件

有没有这样的软件,就是在我做一笔交易后,可以知道那向个表的数据发生了变化(包括更新、插入、删除)?

2008-7-1 09:16 jarjar
复制服务
RTDS
触发器

2008-7-1 12:15 56553655
复制服务,和RTDS这个投入就相对大点了,
我只是简单的应用,需要看看我在做操作的时候那些表发现了数据变化,
这里觉得触发器好点,有没有针对所有表的触发器,
因为表有几百个,如果每个都写一个触发器挺不爽的

2008-7-1 13:26 56553655
我通过生成触发器语句来实现的,不过得分别为每个表建立insert、update、delete的触发器,我原来是想建立在一个触发器中的,可是我下面的方式不可用,报if 下的select那里出错,但我看手册,说select into不可用,没说单select不可用:
create trigger T_bfms_com_psaudetail
on bfms_com_psaudetail
for insert,update,delete
as
begin
        declare @type varchar(10)
        if inserted
        begin
                select @type='insert'
        end
        if updated
        begin
                select @type='update'
        end
        if deleted
        begin
                select @type='delete'
        end
        insert into T(tablename,changetime,type) values('bfms_com_psaudetail',getdate(),@type)
end
请指点一下

2008-7-2 09:52 jarjar
不是insert into不行,应该是if inserted/if updated/if deleted这几条语句的问题。好像ASE中不能这样来判断触发器的操作吧。

2008-7-3 12:29 56553655
但是在编译的时候,报的是SELECT那里出错,在上面没有报错。
这个没有关系了,我已经为每个表建立了INSERT/DELETE/UPDATE的触发器。
再请问,如何取得当前对该表的操作语句,如这里的动作是INSERT,但我想知道这个INSERT语句是怎么样的?
可以实现这样的需求不?

2008-7-24 19:15 freed609
很简单啊,再建一个审计数据库就可以了!

2008-7-25 11:24 jarjar
[quote]原帖由 [i]freed609[/i] 于 2008-7-24 19:15 发表 [url=http://www.itpub.net/redirect.php?goto=findpost&pid=11056613&ptid=1014254][img]http://www.itpub.net/images/common/back.gif[/img][/url]
很简单啊,再建一个审计数据库就可以了! [/quote]
:right: :right: :right:

2008-7-26 19:57 56553655
太好了,居然还可以这样实现,
随便补充一篇《如何安装审计数据库?》:
[url]http://bbs.chinaunix.net/archiver/?tid-560903.html[/url]

页: [1]


Powered by ITPUB论坛