>我有一个数据源,其中包含使用日期戳格式化的服务器表。
例:
-
dbo.TableName20180203
-
dbo.TableName20180204
-
dbo.TableName20180205
为 Blob 定义数据集时,我可以根据切片设置文件夹路径的格式。
示例:"folderPath": "mypath/{Year}/{Month}/{Day}"
我想像这样定义表名属性:"tableName": "dbo.TableName{Year}{Month}{Day}"
在 blob 数据集中,我定义了 partitionedBy
属性,但如果数据集类型为 SQL 表,则似乎不允许这样做。
我考虑过但未尝试过的另一条路径是接受参数和一些动态 SQL 的存储过程。
有没有办法像我上面说明的那样格式化表名?
我通过使用复制活动并使用存储过程作为源解决了我的问题。
存储过程采用三个参数:@Year
、@Month
和@Day
。然后,我使用这些参数构建一个 select 语句并运行 sp_executesql
。
最后,我能够以Day
的频率以切片的形式输出数据。