INF: xp_enum_oledb_providers Enumerates the OLE DB Providers

ID: Q216575


The information in this article applies to:
  • Microsoft SQL Server version 7.0


SUMMARY

xp_enum_oledb_providers is a new extended stored procedure that enumerates all OLE DB providers installed on a SQL Server.

The following is the syntax for xp_enum_oledb_providers:


EXEC xp_enum_oledb_providers 


MORE INFORMATION

xp_enum_oledb_providers returns three columns as follows:

  • ProviderName: Default value of CLSID key.


  • Parsename: CLSID (GUID).


  • Description: Friendly name of the provider.


Using this procedure, you can write another script or procedure to check if a specific provider is installed on a computer.


-- sp_valid_oledb_provider
-- A test to see if you pass in a legal provider name.
use master
go
if exists (select * from sysobjects where type = 'P' and name = 'sp_valid_oledb_provider')<BR/>
drop proc sp_valid_oledb_provider<BR/>
go
create proc sp_valid_oledb_provider @p nvarchar(255) as
set nocount on
create table #t([Provider Name] nvarchar(255) not null,[Parse Name] nvarchar(255) not null,[Provider Description] nvarchar(255) not null)
insert into #t exec xp_enum_oledb_providers
if exists (select * from #t where [Provider Name] = @p)
begin
   -- print 'OK'
   return 1
end
else
begin
   raiserror('Invalid OLE-DB provider "%s"',-1, -1, @p)
   return 0<BR/>
end
go
exec sp_valid_oledb_provider N'SQLOLEDB'
exec sp_valid_oledb_provider N'MSDASQL'
exec sp_valid_oledb_provider N'Microsoft.Jet.OLEDB.4.0'
exec sp_valid_oledb_provider N'Illegal Provider' 


This procedure can be used to find if a specific OLE DB provider is installed before setting up a SQL Server 7.0 distributed query with sp_addlinkedserver.

REFERENCES

For more details on setting up and using distributed queries using OLE DB providers, refer to the "sp_addlinkedserver", "OpenQuery", and "OpenRowset in" topics in SQL Server 7.0 Books Online.

For additional information, see the Support WebCast at the following location:
http://support.microsoft.com/servicedesks/webcasts/wc102699/WC102699.asp

Additional query words: kbDSupport oledb proc xproc st sproc sp xp

Keywords : kbole kbSQLServ700
Version : winnt:7.0
Platform : winnt
Issue type : kbinfo


Last Reviewed: January 28, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.