简体   繁体   English

Microsoft OLE DB提供程序的SQL Server错误'80040e14'找不到存储的过程

[英]Microsoft OLE DB Provider for SQL Server error '80040e14' Could not find stored procedure

I am migrating a classic ASP web app to new servers. 我正在将经典的ASP Web应用程序迁移到新服务器。 The database back end is migrating from SQL Server 2000 to SQL Server 2008, and the app is moving from Win2000 x86 to Win2003R2 x64. 数据库后端从SQL Server 2000迁移到SQL Server 2008,应用程序从Win2000 x86迁移到Win2003R2 x64。 I am getting the above error on every single stored procedure call within the application. 我在应用程序中的每个单个存储过程调用上都收到上述错误。

I have verified: 我已验证:

  • Yes, the SQL user is set up, using correct username and password 是的,使用正确的用户名和密码设置了SQL用户
  • Yes, the SQL user has execute permissions on the stored procedures in the database 是的,SQL用户对数据库中的存储过程具有执行权限
  • Yes, I have updated the TypeLib references to the new UUID 是的,我已经将TypeLib引用更新为新的UUID
  • Yes, I have logged into the database via SSMS with the SQL user id and it can see and execute the stored procedures just fine in SSMS, but not from the web app. 是的,我已经使用SQL用户ID通过SSMS登录了数据库,它可以在SSMS中很好地查看和执行存储过程,但不能从Web应用程序中执行。
  • Yes, the SQL user has the database set as its default database. 是的,SQL用户已将数据库设置为其默认数据库。

The most frustrating thing is it works fine on the DEV server, but not on the production server. 最令人沮丧的是,它可以在DEV服务器上正常工作,但不能在生产服务器上正常工作。 I have gone through every IIS setting 5 or 6 times and the web app is set up precisely the same in both environments. 我已经对每个IIS设置进行了5到6次设置,并且在两种环境中Web应用程序都设置完全相同。 The only difference is the database server name in the connection string (DEV vs prod) 唯一的区别是连接字符串中的数据库服务器名称(DEV vs prod)

EDIT: I have also tried pointing the prod web box at the dev database server and get the same error so I'm fairly sure the issue isn't on the database side. 编辑:我还尝试过将prod Web框指向开发数据库服务器,并得到相同的错误,因此我可以确定问题不在数据库侧。

Are you sure that you are really connected to the instance and database you think you are (in the App)? 您确定您确实已连接到自己认为的实例和数据库(在App中)吗? It only takes the wrong DB in the connection string to override the default database for the user. 仅在连接字符串中使用错误的数据库即可覆盖用户的默认数据库。

Can you execute some inline SQL on the connection like: 您可以在连接上执行一些内联​​SQL吗:

SELECT @@SERVERNAME AS SERVERNAME
    ,DB_NAME() AS [DB_NAME]
    ,CURRENT_USER AS [CURRENT_USER]

It might be the schema. 它可能是模式。 Have you set the default schema of your user in the database you are using? 您是否在使用的数据库中设置了用户的默认架构?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 SQL Server的Microsoft OLE DB提供程序错误'80040e14'无效的列名。 SQL查询 - Microsoft OLE DB Provider for SQL Server error '80040e14' Invalid column name . SQL query 用于SQL Server的Microsoft OLE DB提供程序错误“80040e14”'='附近的语法不正确 - Microsoft OLE DB Provider for SQL Server error '80040e14' Incorrect syntax near '=' Microsoft OLE DB提供程序的SQL Server错误'80040e14' - Microsoft OLE DB Provider for SQL Server error '80040e14' SQL Server错误'80040e14'列名不明确 - SQL Server error '80040e14' Ambiguous column name Microsoft OLE DB提供程序的SQL Server错误'80040e09' - Microsoft OLE DB Provider for SQL Server error '80040e09' Microsoft OLE DB提供程序的SQL Server错误'80040e07' - Microsoft OLE DB Provider for SQL Server error '80040e07' SQL Server 2012 上的 SQL Server 错误“80040e14”语法不正确 - SQL Server error '80040e14' incorrect syntax on SQL Server 2012 尝试从 SQL Server 检索数据时出现 VBA ADODB 错误 (80040e14) - VBA ADODB error (80040e14) when trying to retrieve data from SQL Server SQL Server错误80040e14在结果集中使用经典ASP - SQL Server error 80040e14 Using Classic ASP in a Result Set 无法使用VBA连接到SQL Server(运行时错误(80040e14)) - Cannot connect to sql server with VBA (Run-time error (80040e14))
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM