有没有办法在MS SQL 2005上模拟或更改SYSTEM_USER?
我有很多观点(由第三方编写),我无法更改,它将SYSTEM_USER引用到" ID表"。
... AND idCode = SUBSTRING(SYSTEM_USER, CHARINDEX('\', SYSTEM_USER) + 1, LEN(SYSTEM_USER))
*我确实拥有视图所从的表的权限,但这些视图添加了SYSTEM_USER。*
感谢。
答案 0 :(得分:4)
查看Execute As Transact SQL
如果您拥有正确的权限,则可以将其作为另一个用户执行任何T-SQL,然后恢复为原始连接凭据。
Select System_User
Go
Execute As Login = 'SomeOtherLogin'
Select System_User
Revert
Go
Select System_User
Go
这将输出第一个和第三个选择的当前连接凭据,并输出第二个选择的指定凭据。