snowflake-cloud-data-platform - 创建模式,但用于模式列表
问题描述
为用户名列表创建多个模式的最佳编程选项是什么?
我想这样做是为了方便,所以当用户登录到雪花时,他们会准备好他们的环境。用户通过 scim proto 同步,因此我可以从分配给他们的组中获取列表。
谢谢!
解决方案
例如,可以使用以下方法生成脚本:ACCOUNT_USAGE.USERS:
USE ROLE ACCOUNTADMIN;
WITH schema_cte AS (
SELECT
REPLACE('CREATE SCHEMA IF NOT EXISTS <name> /*CLONE <source schema>*/;'||CHAR(13)
, '<name>', DISPLAY_NAME) AS create_schema_line
FROM SNOWFLAKE.ACCOUNT_USAGE.USERS
-- WHERE additional_condition_here
)
SELECT
'USE ROLE <role_name_here>;' || CHAR(13) ||
'USE DATABASE <database_name_here>;' || CHAR(13) ||
LISTAGG(create_schema_line) WITHIN GROUP(ORDER BY create_schema_line) AS script
FROM schema_cte;
相关:标识符要求
推荐阅读
- sql - JPA 悲观锁可能的性能问题
- javascript - javascript中的字体样式
- python - 在 datatime 对象中排除时区信息
- python - 如何按值比较两个数据框的值并忽略其他不相关的行
- vba - 在 vba excel 中创建对象时使用括号?
- python - 创建虚拟变量
- c# - ASP.NET CORE,如何读取另一个进程使用的文件夹中的所有文件
- android - 在 Android 中使用不同的资源构建 apk
- python - 来自 memory_profiler 的 @profile 装饰器正在改变代码的行为,特别是 pandas 函数
- google-sheets - 谷歌表 - 查找最后一个值列索引并从该索引中的另一行获取值 + 1