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