снежинка создает базу данных с переменной

#snowflake-cloud-data-platform

#snowflake-cloud-data-platform

Вопрос:

Я пытаюсь создать базу данных, используя переменную в snowflake

установите var=’mytestdb’; создайте базу данных, ЕСЛИ НЕ СУЩЕСТВУЕТ $var;

Возможно ли, что приведенный выше запрос выдает ошибку?

Комментарии:

1. Привет @Marcel, код такой же, как указано выше. просто задайте переменную и используйте имя переменной при создании базы данных.

Ответ №1:

Вам нужно использовать идентификатор:

 set my_var = 'test_database';
select $my_var;
create database IF NOT EXISTS identifier($my_var);
  

Результат:

 1
Statement executed successfully.
1
test_database
1
TEST_DATABASE already exists, statement succeeded.
  

Для получения дополнительной информации:

https://docs.snowflake.com/en/sql-reference/session-variables.html

Переменные также могут содержать имена идентификаторов, такие как имена таблиц. Чтобы использовать переменную в качестве идентификатора, вы должны обернуть ее в IDENTIFIER() , например, IDENTIFIER($MY_VARIABLE) . Некоторые примеры приведены ниже: