tha*_*ude 1 sql sql-server stored-procedures
我创建了一个简单的过程,它将为我提供包含类似关键字的表条目.
程序:
USE ResourceRequest
GO
CREATE PROCEDURE resource_lookup @ProjectName nvarchar(100)=null
AS
SELECT *
FROM [dbo].Resource_Request
WHERE [Project Name] LIKE @ProjectName + '%'
GO
Run Code Online (Sandbox Code Playgroud)
我可以执行该程序,但"[dbo].[resource_lookup]"似乎有问题,因为无法找到它?我目前已登录测试服务器并可以在"存储过程"文件夹中查看该过程?是什么导致了这个问题?
USE [ResourceRequest]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[resource_lookup]
@ProjectName = N'mutually'
SELECT 'Return Value' = @return_value
GO
Run Code Online (Sandbox Code Playgroud)
您没有在其中指定显式模式,create因此它在默认模式中创建它,看起来它不是dbo.
使用
CREATE PROCEDURE dbo.resource_lookup @ProjectName nvarchar(100)=null
AS
/* ... */
Run Code Online (Sandbox Code Playgroud)
确保根据需要创建它.
但听起来这是一个intellisense警告而不是运行时错误.
因此,使用Ctrl+ Shift+ R来刷新智能感知缓存所以拿起你的新添加的对象.
或者,如果这不起作用(一些SSMS插件劫持此组合)通过菜单选项执行 Edit -> IntelliSense -> Refresh Local Cache
