首页 > 解决方案 > 动态 SQL 查询未将数据返回到 SQL 表

问题描述

我有如下动态 SQL 查询

动态 SQL 查询:

Declare @Currentmonth4date varchar(8)= convert(varchar(8), DATEADD(month, DATEDIFF(month, 0, GETDATE()), 3),112)
Declare @SQL varchar(max)= 'dbo.Exclusion_Process_Tab1_' + '20181204'

Declare @Select varchar(400) = 'Select * from ' + @SQL

exec (@Select)

我试图通过 microsoft 查询源从 excel'2010 执行此代码。

点击返回数据到选项表单查询窗口后,它没有将数据返回到excel表中。

请帮忙

标签: sql-serverexcel

解决方案


您是否尝试过测试您的动态 sql

它正在返回Select * from dbo.Exclusion_Process_Tab1_20181204

尝试这个

Declare @Currentmonth4date varchar(8)= convert(varchar(8), DATEADD(month, DATEDIFF(month, 0, GETDATE()), 3),112)
Declare @SQL varchar(max)= 'dbo.Exclusion_Process_Tab1_'+ @Currentmonth4date

Declare @Select varchar(400) = 'Select * from '+@SQL

PRINT(@SELECT)

--exec (@Select)

这个回来了

Select * from dbo.Exclusion_Process_Tab1_20190104

测试评论打印和取消评论执行后

在执行动态查询之前,使用 print 测试它们并查看它们返回什么。


推荐阅读