SQL触发器是否可以不用SA用户

来源:百度知道 编辑:UC知道 时间:2024/05/29 00:23:16
我在SQL Server的一个数据库的一个表上用了一个触发器使用的SA的用户,另外有两个WEB程序操作这个数据库,使用的用户不是SA的,并且是两个不同的用户(dss和dds),现在这两个WEB程序的用户只能换为SA可以正常使用,另外我还有一个C/S程序也是使用这个数据库,加了这个触发器后也报器.请问一下,如果一个数据库有3个不同用户操作这个表,那么我触发器的用户该如何设置?
触发器的作用是这个表的数据变后立即更新到另一个备用数据库的相应表中。
备用数据库在另一台服务器,因此需要用户登录。
主要代码如下:
exec master..xp_cmdshell 'isql /S"192.168.6.2" /U"sa" /P"358" /q"exec master..xp_cmdshell ''net start msdtc'',no_output"',no_output
exec master..xp_cmdshell 'net start msdtc',no_output
begin distributed transaction
delete from openrowset('sqloledb','192.168.6.2';'sa';358',xssm.dbo.pxssm) where xh in(select xh from deleted)
insert into openrowset('sqloledb','192.168.6.2';'sa';358',xssm.dbo.pxssm) select * from inserted

,使用的用户不是SA的,并且是两个不同的用户(dss和dds),现在这两个WEB程序的用户只能换为SA可以正常使用,另外我还有一个C/S程序也是使用这个数据库,加了这个触发器后也报器.请问一下,如果一个数据库有3个不同用户操作这个表,那么我触发器的用户该如何设置?
触发器的作用是这个表的数据变后立即更新到另一个备用数据库的相应表中。

可以