“触发器具有未解析的用户引用”,但仅在Visual Studio数据库项目中

时间:2017-04-01 21:32:18

标签: sql visual-studio-2015 database-project

我在Visual Studio中的数据库项目中创建了一个数据库触发器,这就是我得到以下错误的地方(并且只是在trAudit_Transactions.sql文件中,但在我运行它时没有数据库服务器)

  

触发器:[MYDB]。[trAudit_Transactions] 有一个未解析的用户 [MYDB_Audit]的引用。

我的触发器看起来像这样

CREATE TRIGGER [trAudit_Transactions] ON [MYDB].[TRANSACTION_WAIT]
WITH EXECUTE AS 'MYDB_Audit'  -- the error comes from here
FOR INSERT, UPDATE, DELETE 
AS
...

由于我无法发布/构建解决方案(因为错误),我只是注释掉行nr 2并创建脚本,取消注释错误的部分,它在服务器上运行得很好。

为什么/这是什么?只是在Visual Studio中?当我更改已发布的脚本并针对db运行它时,一切正常。

创作的其余部分在这里

CREATE LOGIN   [MYDB_Audit]     WITH PASSWORD = N'xxx' CHECK_POLICY = OFF;
CREATE USER    [MYDB_Audit]     FOR LOGIN     [MYDB_Audit];
CREATE ROLE    [db_mydb_audit]  AUTHORIZATION [dbo];
ALTER  ROLE    [db_mydb_audit]  ADD MEMBER    [MYDB_Audit];
GRANT CONNECT                   TO            [MYDB_Audit];

我已经尝试了所有我能想到的东西,并且在没有运气的情况下到处搜寻。

这里发生了什么?我错过了什么?

0 个答案:

没有答案