Sql Can';不执行存储过程
我已经创建了一个存储过程,可以在存储过程节点下看到它,但是当尝试执行时,却找不到该过程 在存储过程节点下,它被称为dbo.CopyTableSql Can';不执行存储过程,sql,sql-server,database,stored-procedures,sql-server-express,Sql,Sql Server,Database,Stored Procedures,Sql Server Express,我已经创建了一个存储过程,可以在存储过程节点下看到它,但是当尝试执行时,却找不到该过程 在存储过程节点下,它被称为dbo.CopyTable exec CopyTable CopyTable未定义为红色,表示它不存在。为什么? 即使我右键单击该过程并说脚本存储过程为执行对象,它生成的代码也会用红色下划线,并且找不到存储过程。尝试添加dbo并选择正确的数据库 USE databaseName GO EXEC dbo.CopyTable GO 确保所选数据库包含存储过程CopyTable
exec CopyTable
CopyTable未定义为红色,表示它不存在。为什么?
即使我右键单击该过程并说脚本存储过程为执行对象,它生成的代码也会用红色下划线,并且找不到存储过程。尝试添加
dbo
并选择正确的数据库
USE databaseName
GO
EXEC dbo.CopyTable
GO
CopyTable
USE YourDatabase
EXEC CopyTable
很可能您只是在查询窗口中的错误数据库中,您可以这样指定数据库:
EXEC [yourDBName].dbo.CopyTable
阅读如何
考虑到你的最新问题:
即使我右键单击该过程并说“脚本存储过程”
as execute to-它生成的代码以红色和斜线划线
也可以查找存储过程
如果存储过程无效,则可能发生这种情况。请仔细检查存储过程的有效性,并确保它引用的表存在,等等。请尝试运行创建过程。突出显示它,f5它,然后确保它在其他地方调用之前运行 也许在您的过程中,您不小心剪切粘贴了您的脚本名(dbo.CopyTable),比如说
SELECT * FROM dbo.CopyTable
WHERE ClientId = @ClientId
RETURN
然后,当您调用您的进程时,您会得到“无效对象名dbo.CopyTable”,并假设sql在查找存储的进程时遇到问题。。。这不是问题,它是查找和运行进程,但实际上是进程中的问题。您确定在正确的数据库上执行它吗?像
exec[dbName].dbo.CopyTable这样的东西怎么样work@nadG请看我的最新答案。您是否确保存储过程有效?您在执行时是否有任何错误?