3

几天前我的电脑上出现了这个问题,我没有对 Visual Studio/SQL Server 设置进行任何更改。

尝试在 Visual Studio 中对数据库文件 (*.mdf) 执行任何手动操作时,出现以下错误:

找不到指定的过程。(来自 HRESULT 的异常:0x8007007F)

(例如,尝试创建新表时,或显示现有表的数据时)

我该如何解决这个错误?

4

4 回答 4

1

关于此错误的传统看法是,它可能反映了丢失或损坏的 DLL(在 SQL Server 或 Visual Studio 中)。并且 SOP 是重新安装,尽管这似乎并不总是有效。

于 2013-06-24T15:36:36.883 回答
1

确保您或其他人没有更改您对主人的权利。为了添加任何东西,一条记录被添加到该表中。

附录: 您可以运行以下脚本来确定谁拥有哪些权限以及它们是隐式的还是显式的。

WITH perms_cte as
(
    select USER_NAME(p.grantee_principal_id) AS principal_name,
            dp.principal_id,
            dp.type_desc AS principal_type_desc,
            p.class_desc,
            OBJECT_NAME(p.major_id) AS object_name,
            p.permission_name,
            p.state_desc AS permission_state_desc
    from    sys.database_permissions p
    inner   JOIN sys.database_principals dp
    on     p.grantee_principal_id = dp.principal_id
)
--users
SELECT p.principal_name,  p.principal_type_desc, p.class_desc, p.[object_name], p.permission_name, p.permission_state_desc, cast(NULL as sysname) as role_name
FROM    perms_cte p
WHERE   principal_type_desc <> 'DATABASE_ROLE'
UNION
--role members
SELECT rm.member_principal_name, rm.principal_type_desc, p.class_desc, p.object_name, p.permission_name, p.permission_state_desc,rm.role_name
FROM    perms_cte p
right outer JOIN (
  select role_principal_id, dp.type_desc as principal_type_desc, member_principal_id,user_name(member_principal_id) as member_principal_name,user_name(role_principal_id) as role_name--,*
from    sys.database_role_members rm
INNER   JOIN sys.database_principals dp
ON     rm.member_principal_id = dp.principal_id
) rm
ON     rm.role_principal_id = p.principal_id
order by 1
--- thanks to Jamie Thomson for this ditty 

还有一些建议;

使用分析器跟踪呼叫并确认您以您认为的用户身份连接 - sp_who2 可能是另一种验证方式。

验证您的进程是否在正确的数据库中。使用 c# 连接并运行 SELECT DB_NAME() - 将结果写入您可以阅读以确认的地方。

如果这适用于一种环境而不适用于另一种环境,我会强烈怀疑连接字符串。

检查您的 SQL 日志中是否报告了身份验证错误。这些再次表明可能的连接问题。

于 2013-06-22T17:52:16.103 回答
0

尝试以管理员身份运行 Visual Studio

右键单击 Visual Studio --> 以管理员身份运行。

于 2013-06-22T08:39:07.797 回答
0

尝试连接到 SQL Server Management Studio 中的数据库。这至少会缩小它是否是数据库权限问题或其他问题。此外,请检查以确认数据库存在并且您有权访问它。(就像乔建议的那样。)

假设检查出来......我的谷歌搜索发现了一个听起来非常相似的人。他说 Adel 建议的 runas 管理员东西对他有用,但还有其他问题也可能导致错误消息,包括 VS 无法找到 Web 应用程序项目文件中指定的 IIS 虚拟服务器(权限?重命名?) . 确认该文件存在并且您有权访问它。

http://connect.microsoft.com/VisualStudio/feedback/details/317124/system-runtime-interopservices-comexception-in-webapplication-project

于 2013-06-28T18:42:18.833 回答