Error message when you run a Visual C++ application that connects to SQL Server 2005 by using ODBC: "[Microsoft][ODBC SQL Server Driver][SQL Server] Could not find stored procedure 'sp_fallback_MS_sel_fb_svr'" (922548)
The information in this article applies to:
- Microsoft SQL Server 2005 Standard Edition
- Microsoft SQL Server 2005 Workgroup
- Microsoft SQL Server 2005 Developer Edition
- Microsoft SQL Server 2005 Enterprise Edition
- Microsoft SQL Server 2005 Express Edition
- Microsoft SQL Server 2005 Express Edition with Advanced Services
- Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
- Microsoft SQL Server 2005 Enterprise X64 Edition
- SQL Server 2005 Standard Edition for Itanium-based Systems
- Microsoft SQL Server 2005 Standard X64 Edition
SYMPTOMSConsider the following scenario. You create a Microsoft Visual C++ application that connects to Microsoft SQL Server 2005 by using Open Database Connectivity (ODBC). Additionally, you set the SQL_COPT_SS_FALLBACK_CONNECT attribute to the SQL_FB_ON value for the SQL Server connection. In this scenario, you receive the following error message when you run the application: [Microsoft][ODBC SQL Server Driver][SQL Server] Could not find stored
procedure 'sp_fallback_MS_sel_fb_svr' CAUSEThis problem occurs because the ODBC driver cannot find the sp_fallback_MS_sel_fb_svr stored procedure in the master database in SQL Server 2005.
When you set the SQL_COPT_SS_FALLBACK_CONNECT attribute to the SQL_FB_ON value for the SQL Server connection, the ODBC driver calls the sp_fallback_MS_sel_fb_svr stored procedure. The sp_fallback_MS_sel_fb_svr stored procedure exists in SQL Server 2000 and in earlier versions of SQL Server. However, the sp_fallback_MS_sel_fb_svr stored procedure does not exist in SQL Server 2005.WORKAROUNDTo work around this problem, manually create a dummy sp_fallback_MS_sel_fb_svr stored procedure. To do this, run the following statements in SQL Server 2005. use master
go
set nocount on
set implicit_transactions off
set ansi_nulls on
set quoted_identifier on
go
if object_id('sp_fallback_MS_sel_fb_svr','P') > 0
drop procedure sp_fallback_MS_sel_fb_svr
go
create procedure sp_fallback_MS_sel_fb_svr
@pFallbackSvrName character varying(30) OUTPUT
as
Set nocount on
Set ansi_nulls on
SELECT @pFallbackSvrName = null
Return 0
go
EXEC sp_MS_marksystemobject 'sp_fallback_MS_sel_fb_svr'
go
grant execute on sp_fallback_MS_sel_fb_svr to public
go
checkpoint
go
STATUSMicrosoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Modification Type: | Major | Last Reviewed: | 7/28/2006 |
---|
Keywords: | KBsql2005connect kbExpertiseAdvanced kbtshoot kbprb KB922548 kbAudDeveloper kbAudITPRO |
---|
|