我有一个 Synapse Git 项目,它在 Azure 门户中创建了 SQL 脚本,如下所示 Microsoft Docs SQL Script挑战在于,在 GIT 中,它们显示为这种庞大的 JSON 文件,我很乐意将其作为 SQL 文件 DBEAVER 或 IntelliJ 阅读……
有什么方法可以做到这一点,而无需手动选择文件的查询部分并对其进行清理吗?
最佳答案
首先一些背景
Synapse 以 JSON 格式存储所有工件。在 Git 存储库中,它们位于以下文件夹结构中:
每个文件夹内都有定义工件的 JSON 文件。文件夹 sqlscript 包含 SQL 脚本的 JSON,格式如下:
注意:脚本的 Synapse 文件夹只是一个属性 - 这就是为什么所有 SQL 脚本名称在整个工作区中必须是唯一的。
提取脚本
有缺点:您必须手动执行,一次 1 个文件,并且无法控制输出位置或 SQL 文件名。
要从 JSON 中提取 SQL,您必须访问 properties.content.query 属性值并将其保存为 .sql 文件。据我所知,没有内置功能可以自动将脚本保存为 SQL。由于 \n 的原因,简单的复制/粘贴实际上不起作用。
我认为您可以使用 Azure DevOps Pipeline(或 GitHub Action)至少实现部分自动化。您可能需要将 JSON 文件复制到另一个位置,然后让一个进程(数据工厂、Azure 函数、逻辑应用程序等)读取该文件并提取查询。
关于sql - 如何在 IDE 中将 Synapse Analytics SQL 脚本(JSON 格式)读取为 SQL 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71070882/