-- 1.環境設定 | 1.Snowflake Intelligenceを使うためのロール・スキーマ作成 -- ACCOUNTADMIN ロールに切り替え -- (最上位の管理者ロール。アカウント全体に対する権限を持つ) use role accountadmin; -- Snowflake Intelligence 用の管理ロールを作成 create role if not exists snowflake_intelligence_admin; -- アカウント全体で Integration オブジェクトを作成する権限を付与 -- (API Integration や Storage Integration などを作れるようになる) grant create integration on account to role snowflake_intelligence_admin; -- アカウント全体で Database を作成する権限を付与 grant create database on account to role snowflake_intelligence_admin; -- 指定した Warehouse(ここでは compute_wh)を利用できる権限を付与 grant usage on warehouse compute_wh to role snowflake_intelligence_admin; -- 現在ログインしているユーザー名を変数にセット set current_user = (SELECT CURRENT_USER()); -- 作成したロールを現在のユーザーに付与 grant role snowflake_intelligence_admin to user IDENTIFIER($current_user); -- 現在のユーザーのデフォルトロールを新しく作ったロールに変更 alter user set default_role = snowflake_intelligence_admin; -- 作成したロールをアクティブに切り替え use role snowflake_intelligence_admin; -- Snowflake Intelligence 用のデータベースを作成 -- すでに存在していれば新規作成はされない create database if not exists snowflake_intelligence; -- データベース内に schema "agents" を作成 create schema if not exists snowflake_intelligence.agents; -- schema "agents" 上で Agent オブジェクトを作成できる権限を付与 -- (Snowflake Native Apps の Agent 機能を利用するため) grant create agent on schema snowflake_intelligence.agents to role snowflake_intelligence_admin; -- Cortex のクロスリージョン利用を AWS_US リージョンに対して有効化 ALTER ACCOUNT SET CORTEX_ENABLED_CROSS_REGION = 'AWS_US'; -- 1.環境設定 | 2.データベース・スキーマ作成 CREATE DATABASE if not exists HAKATA_DB; CREATE SCHEMA if not exists HAKATA_DB.HAKATA_SCH; -- 1.環境設定 | 3.ステージ作成 CREATE STAGE if not exists HAKATA_DB.HAKATA_SCH.SEMANTIC_MODEL; -- 1.環境設定 | 4.ディレクトリテーブルを有効化 ALTER STAGE HAKATA_DB.HAKATA_SCH.SEMANTIC_MODEL SET DIRECTORY = ( ENABLE = TRUE );