如何解决动态编写的sql查询? [英] How to solve the sql query written dynamically?
本文介绍了如何解决动态编写的sql查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下面是我的SQL查询,写成一个字符串。获取以下错误
'@ LinkedServerName'附近的语法不正确附近出错
SET @ STRINSERT = @ STRIDENTITY + ' INSERT INTO' + < span class =code-sdkkeyword> @ ARCHIVEDB + ' 。dbo。' + @ TableName + ' (' + < span class =code-sdkkeyword> @ ColumnList + ' )
SELECT * FROM( SELECT * FROM OPENQUERY'( @ LinkedServerName ,' SELECT' + @ ColumnList + ' FROM' + @ LI VEDB + ' 。dbo。' + @ TableName + '
WHERE' + @ DateField +
< CONVERT(DATETIME,''' + @ ArchiveAgeDate + ' '',103)+ 1')' AS X'
解决方案
嗯 - 你的报价在错误的地方,你错过了一个加号,我认为:
SELECT * FROM ( SELECT * FROM OPENQUERY ' (@ LinkedServerName, ' SELECT ' + @ColumnList应该是
SELECT * FROM ( SELECT * FROM OPENQUERY (' + @LinkedServerName,' SELECT ' + @ColumnList
Below is my SQL Query written as a string. Getting following Error
"Error near Incorrect syntax near '@LinkedServerName'"
SET @STRINSERT=@STRIDENTITY+'INSERT INTO '+ @ARCHIVEDB +'.dbo.'+ @TableName +'('+ @ColumnList + ')
SELECT * FROM (SELECT * FROM OPENQUERY'(@LinkedServerName,'SELECT '+ @ColumnList + ' FROM '+ @LIVEDB +'.dbo.'+@TableName + '
WHERE '+ @DateField + '
< CONVERT(DATETIME,'''+@ArchiveAgeDate+''',103)+ 1')'AS X'
解决方案
Um - your quote is in the wrong place, and you missed a plus, I think:
SELECT * FROM (SELECT * FROM OPENQUERY'(@LinkedServerName,'SELECT '+ @ColumnListShould be
SELECT * FROM (SELECT * FROM OPENQUERY(' + @LinkedServerName,'SELECT '+ @ColumnList
这篇关于如何解决动态编写的sql查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文