无法 运行 查询,dbo.tablename 对象名称无效?

Unable to Run Query, dbo.tablename invalid object name?

我正在尝试构建一个动态查询,它将根据数据库中存在的行插入或更新记录,如果是,我将根据@ObjectID 更新一堆记录和子记录。

这是我的查询:

DECLARE @ObjectID BIGINT = 0;
SET @ObjectID = 0;

IF NOT EXISTS (SELECT ID 
               FROM dbo.ResortInfo 
               WHERE dbo.ResortInfo.resortCode = N'PYI')
BEGIN
    INSERT INTO dbo.ResortInfo (columns) 
    VALUES (colvalues)

    SET @ObjectID = SCOPE_IDENTITY()

    PRINT @ObjectID
END
ELSE
BEGIN
    PRINT 'Already exists' -- update query will replace here
END

查询在没有声明部分的情况下运行正常,但是当我添加

DECLARE @ObjectID BIGINT = 0;
SET @ObjectID = 0;

我收到以下错误:

Msg 208, Level 16, State 1, Line 4
Invalid object name 'dbo.ResortInfo'

我会仔细检查您是否选择了正确的数据库。我目前选择了 master,但你的 table 可能住在另一个。

在您的存储过程中,您可以将其添加到顶部以确保您使用的是正确的。

USE [<your db name here>]