[英]OpenQuery in SQL Server
I don't know how to config the OpenQuery
function. 我不知道如何配置
OpenQuery
函数。
I want to use OpenQuery
to query database in test project. 我想使用
OpenQuery
在测试项目中查询数据库。 But I don't know how config the servername param 但是我不知道如何配置服务器名参数
DECLARE @Sql varchar(max)
DECLARE @SQLExcuteSentence varchar(max)
SET @Sql = 'declare @UserID INT
select @UserID = 1
declare @TotalGroupByFields nvarchar(2000)
select @TotalGroupByFields = ''Media''
declare @CostDataFileds nvarchar(2000)
select @CostDataFileds = ''''
declare @OtherDataFields nvarchar(max)
select @OtherDataFields = ''MonitoringSpotNumber,MonitoringTotalSeconds,BaseCost,ColourLoading,PositionLoading,WeekendLoading,Discount''
declare @MasterFilterId nvarchar(max)
select @MasterFilterId =''DateRange=20060601-20121231''+char(13)+''IncludeGuests=0''
declare @RatingTargetId nvarchar(2000)
select @RatingTargetId =''''
declare @IsEnableFinancialCloseDate INT
select @IsEnableFinancialCloseDate = 0
declare @MasterDisplayFormat nvarchar(2000)
select @MasterDisplayFormat = ''5''
exec [dbo].[USP_MatrixReport] @UserID, @TotalGroupByFields, @CostDataFileds, @OtherDataFields, @MasterFilterId, @RatingTargetId, @IsEnableFinancialCloseDate, @MasterDisplayFormat, 0'
SET @SQLExcuteSentence = 'SELECT * FROM OPENQUERY(SQLConn,' + '''' + @Sql + '''' + ')'
EXEC (@SQLExcuteSentence);
the SQLConn is what?? SQLConn是什么?
OPENQUERY requires you first set up a linked server, using sp_addlinkedserver . OPENQUERY要求您首先使用sp_addlinkedserver设置链接服务器。 That is where the connectionstring will be set up.
那就是建立连接字符串的地方。
After that, you can use OPENQUERY
to fire a query against the linked server. 之后,您可以使用
OPENQUERY
对链接的服务器进行查询。
Without SQL Server Management Studio it looks like this for localhost: 如果没有SQL Server Management Studio,则本地主机的外观如下所示:
EXEC sp_addlinkedserver
@server='LOCALSERVER', -- name definition for later use in OpenQuery
@srvproduct='SQLSERVER',
@provider='SQLNCLI', -- provider name
@datasrc='SERVERNAME\INSTANCENAME' -- im not sure if there should be '\' or not
Other example with excel file (based on Manoj code): excel文件的其他示例(基于Manoj代码):
EXEC sp_addLinkedServer
@server= N'XLSX_2010',
@srvproduct = N'Excel',
@provider = N'Microsoft.ACE.OLEDB.12.0',
@datasrc = N'C:\Users\SomeUser\Desktop\file.xlsx',
@provstr = N'Excel 12.0; HDR=Yes';
Example for localhost with SQL Server Management Studio and without: 带有SQL Server Management Studio且不包含localhost的示例:
http://sqlserverplanet.com/sql-server/local-linked-server http://sqlserverplanet.com/sql-server/local-linked-server
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.