sql - 动态定位路径 SQL 外表
问题描述
我试图做的是通过 Azure Synapse 从数据湖接收数据并将其导出到另一个数据湖。这种转移已经奏效。我遇到的问题是,当我想在同一位置存储第二组数据时。我收到“外部表位置已存在”的错误。我的第一次尝试是获取已存储的数据,将其与新数据集连接起来,并将其存储回数据湖中的容器中。不幸的是,我收到了同样的错误。因此,我想将我的(每日)新数据集存储在单独的目录中。作为这些目录的名称,我想使用时间戳。我的声明:
DECLARE @timestamp varchar(42);
SET @timestamp = CONVERT(date, SYSDATETIME());
DECLARE @path varchar(42);
SET @path = CONCAT ( '/myMainFolder/' , @timestamp , '/');
CREATE EXTERNAL TABLE export
WITH ( LOCATION = @path
,DATA_SORUCE = [historicalexport]
,FILE_FORMAT = MY_CSV
)
AS
SELECT TOP 1000 *
FROM dbo.anExternalTable
由于“'@path' 附近的语法不正确”,执行此操作会引发错误。但为什么?有人知道吗?打印出@path 时,它完全符合我的要求,没有空格等……@path = '/myMainFolder/TODAYSDATE/'
提前感谢您的帮助!托马斯
解决方案
推荐阅读
- c# - 使用asp mvc连接生物识别zkemkeeper?
- python - pandas:如何将数据框的所有数字列转换为对数
- process - 在无限超时后使用接收挂起 Erlang 进程
- ios - 如何在不阻塞用户交互的情况下执行 tableView.reloadData()
- postgresql - pgmodeler 是否仅用于 PostgreSQL?
- c - 在 C 中动态创建数组,一次取 1 个字符
- java - 什么是代表我的 yaml 文件的更好方法
- android - 在 Recyclerview 后面显示水平大背景
- javascript - 在文本输入 React Native 中打开选取器
- c# - 我从 UnaryExpression.Operand 得到什么?