本文介绍了如何解决动态编写的sql查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 下面是我的SQL查询,写成一个字符串。获取以下错误 '@ LinkedServerName'附近的语法不正确附近出错 SET @ STRINSERT = @ STRIDENTITY + ' INSERT INTO' + @ ARCHIVEDB + ' 。dbo。' + @ TableName + ' (' + @ 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 beSELECT * FROM (SELECT * FROM OPENQUERY(' + @LinkedServerName,'SELECT '+ @ColumnList 这篇关于如何解决动态编写的sql查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!