我创建了一个我知道存在的存储过程,因为我有C#代码调用它,并且我在数据库的表中看到了它的影响。由于某些原因,我无法在Databases --> MyDatabaseName --> Programmability --> Stored Procedures
下的存储过程列表中看到存储过程。
我已经尝试以应该具有访问权限的Windows用户,应该具有访问权限的SQL用户和sa帐户登录,其中任何一个都无法在列表中看到存储过程。运行以下查询证明它存在:
IF EXISTS ( SELECT *
FROM sys.objects
WHERE object_id = OBJECT_ID(N'spUpdateOccurrenceEvent')
AND type IN ( N'P', N'PC' ) )
SELECT 1
ELSE SELECT 0
-- This selects 1
我可以使用此查询查看存储过程:
SELECT OBJECT_DEFINITION (OBJECT_ID(N'spUpdateOccurrenceEvent'));
但它会混淆所有格式,因为它在单个列中返回。如果我可以右键单击它并选择修改,我更愿意看到SP。
有什么想法吗?