DECLARE @SQL1 VARCHAR(8000)
SET @SQL1='
INSERT INTO #T1
SELECT *
FROM OPENQUERY(ICP_DB_SERVER,''
SELECT B.YM AS PureDomain,
A.wzmc AS SiteName,
C.baxh AS SubjectRecordNum,
A.baxh AS SiteRecordNum
FROM icp_gn_baxx_wz A RIGHT JOIN
icp_gn_baxx_ymlb B ON A.ID = B.WZID LEFT JOIN
icp_gn_baxx_zt C ON A.ZTID = C.ID
WHERE B.YM ="+@PureDomain+"'')'
因为数据库服务器瘫痪,无法实际测试,想请高手帮忙先看下会出什么问题,谢谢。
SET @SQL1='
INSERT INTO #T1
SELECT *
FROM OPENQUERY(ICP_DB_SERVER,''
SELECT B.YM AS PureDomain,
A.wzmc AS SiteName,
C.baxh AS SubjectRecordNum,
A.baxh AS SiteRecordNum
FROM icp_gn_baxx_wz A RIGHT JOIN
icp_gn_baxx_ymlb B ON A.ID = B.WZID LEFT JOIN
icp_gn_baxx_zt C ON A.ZTID = C.ID
WHERE B.YM ="+@PureDomain+"'')'
因为数据库服务器瘫痪,无法实际测试,想请高手帮忙先看下会出什么问题,谢谢。
DECLARE @SQL1 VARCHAR(8000)SET @SQL1='
INSERT INTO #T1
SELECT *
FROM OPENQUERY(ICP_DB_SERVER,''
SELECT B.YM AS PureDomain,
A.wzmc AS SiteName,
C.baxh AS SubjectRecordNum,
A.baxh AS SiteRecordNum
FROM icp_gn_baxx_wz A RIGHT JOIN
icp_gn_baxx_ymlb B ON A.ID = B.WZID LEFT JOIN
icp_gn_baxx_zt C ON A.ZTID = C.ID
WHERE B.YM ='''''+@PureDomain+''''' '')'
INSERT INTO #T1
SELECT *
FROM OPENQUERY(ICP_DB_SERVER,''''
SELECT B.YM AS PureDomain,
A.wzmc AS SiteName,
C.baxh AS SubjectRecordNum,
A.baxh AS SiteRecordNum
FROM icp_gn_baxx_wz A RIGHT JOIN
icp_gn_baxx_ymlb B ON A.ID = B.WZID LEFT JOIN
icp_gn_baxx_zt C ON A.ZTID = C.ID
WHERE B.YM ='+@PureDomain+''')'
因为OPENQUERY('' ……'')内部已经含有2个
如果不清楚到底该加几个'',教你一中办法
先SET @SQL1='……'
然后print @SQL1
通过调整@SQL1中''个数,看print结果是否正确
declare @PureDomain varchar(max)
set @PureDomain='aa'
SET @SQL1='
INSERT INTO #T1
SELECT *
FROM OPENQUERY(ICP_DB_SERVER,''
SELECT B.YM AS PureDomain,
A.wzmc AS SiteName,
C.baxh AS SubjectRecordNum,
A.baxh AS SiteRecordNum
FROM icp_gn_baxx_wz A RIGHT JOIN
icp_gn_baxx_ymlb B ON A.ID = B.WZID LEFT JOIN
icp_gn_baxx_zt C ON A.ZTID = C.ID
WHERE B.YM ='''+@PureDomain+''')'print @sql1
-----------------------------------------
INSERT INTO #T1
SELECT *
FROM OPENQUERY(ICP_DB_SERVER,'
SELECT B.YM AS PureDomain,
A.wzmc AS SiteName,
C.baxh AS SubjectRecordNum,
A.baxh AS SiteRecordNum
FROM icp_gn_baxx_wz A RIGHT JOIN
icp_gn_baxx_ymlb B ON A.ID = B.WZID LEFT JOIN
icp_gn_baxx_zt C ON A.ZTID = C.ID
WHERE B.YM ='aa')