创建更新过程时出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建更新过程时出错相关的知识,希望对你有一定的参考价值。

我目前正在制定更新程序。我已经检查了其他堆栈帖子和Youtube,但我似乎无法运行代码。这是我找到的一个代码,并尝试使其工作:

UPDATE db_owner
SET Street = ISNULL(@Street, street), 
WHERE Street = @Street

我收到这些错误:

无效的对象名称db_Owner 列名称街道无效 必须声明标量变量“@Street”

我的表是:

dbo.Appointment
dbo.Owner
dbo.Pet
dbo.Vet

我的插入程序是:

dbo.Spinsert_dbo_appointment
dbo.Spinsert_dbo_owner
dbo.Spinsert_dbo_vet
dbo.Spinsert_dbo_pet
答案

我会说不要使用这样的名字,你真的没有一个名为db_owner的表,它是一个数据库角色:

UPDATE dbo.owner
SET Street=ISNULL(@Street, street) 
WHERE Street=@Street

现在为错误Must declare the scalar variable "@Street"它是因为你没有声明变量:

DECLARE @Street DataType; -- declaration of the variable @Street
SET @Street = Value; -- Set a value to the variable @Street
UPDATE dbo.owner
    SET Street=ISNULL(@Street, street) 
    WHERE Street=@Street
另一答案

您收到此错误是因为您使用db_owner作为表名而不是dbo.owner。

另外,在使用之前声明变量@street。

像这样

DECLARE @Street VARCHAR(50)
UPDATE dbo.owner
SET Street=ISNULL(@Street, street), 
WHERE Street=@Street

注意:系统角色是SQL Server,名为db_owner

以上是关于创建更新过程时出错的主要内容,如果未能解决你的问题,请参考以下文章

从另一个存储过程调用 sp_addextendedproperty 时出错

尝试创建新用户并在 web min 中更新用户时出错

将数据从一个片段发送到另一个片段时出错。 (两个片段都由一个活动托管)

在片段中创建自定义列表视图时出错。必需的活动,找到的片段

C#创建Word文件 - 打开文件时出错

使用片段从数据库 SQLite 获取数据时出错