Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения:
Databricks SQL
Databricks Runtime
Создает схему (базу данных) с указанным именем. Если схема с тем же именем уже существует, создается исключение.
Синтаксис
CREATE SCHEMA [ IF NOT EXISTS ] schema_name
[ COMMENT schema_comment |
DEFAULT COLLATION default_collation_name |
{ LOCATION schema_directory | MANAGED LOCATION location_path } |
WITH DBPROPERTIES ( { property_name = property_value } [ , ... ] ) ] [...]
Параметры
-
Имя создаваемой схемы.
Схемы, созданные в каталоге
hive_metastore, могут содержать только буквенно-цифровые символы ASCII и символы подчеркивания (INVALID_SCHEMA_OR_RELATION_NAME). ЕСЛИ НЕ СУЩЕСТВУЕТ
Создает схему с заданным именем, если она не существует. Если схема с тем же именем уже существует, ничего не произойдет.
МЕСТОПОЛОЖЕНИЕ
schema_directoryLOCATIONне поддерживается в каталоге Unity. Если вы хотите указать расположение хранилища для схемы в каталоге Unity, используйтеMANAGED LOCATION.schema_directorySTRING— это литерал. Путь к файловой системе, в которой должна быть создана указанная схема. Если указанный путь не существует в файловой системе, создается каталог с этим путем. Если расположение не указано, схема создается в каталоге хранилища по умолчанию, путь которого настраивается статической конфигурациейspark.sql.warehouse.dir.Предупреждение
Если в хранилище метаданных Hive уровня рабочей области зарегистрирована схема (база данных), удаление схемы с помощью параметра
CASCADEприводит к удалению всех файлов в этом расположении схемы рекурсивно независимо от типа таблицы (управляемого или внешнего).Если схема зарегистрирована в метахранилище каталога Unity, файлы управляемых таблиц каталога Unity удаляются рекурсивно. Однако файлы для внешних таблиц не удаляются. Эти файлы необходимо управлять напрямую с помощью поставщика облачных хранилищ.
Таким образом, чтобы избежать случайной потери данных, никогда не следует регистрировать схему в хранилище метаданных Hive на месте, где уже существуют данные. Не следует создавать новые внешние таблицы в местоположении, управляемом метаданными Hive, или содержащем управляемые таблицы Unity Catalog.
КОММЕНТАРИЙ
schema_commentЛитерал
STRING. Описание схемы.СОРТИРОВКА ПО УМОЛЧАНИЮ default_collation_name
Применяется к:
Databricks SQL
Databricks Runtime 17.1 и более поздних версийПри необходимости определяет параметры сортировки по умолчанию для объектов, определенных в схеме. Если не указано иное, сортировка по умолчанию наследуется из каталога.
УПРАВЛЯЕМОЕ РАСПОЛОЖЕНИЕ
location_pathMANAGED LOCATIONявляется необязательным, если используется Unity Catalog. Если вы хотите указать расположение хранилища для схемы, зарегистрированной на уровне рабочей области Hive или стороннего хранилища метаданных, используйте вместо этогоLOCATION.location_pathдолжен быть литераломSTRING. Указывает путь к корневому расположению хранилища для схемы, отличной от корневого расположения каталога или хранилища метаданных. Этот путь должен быть определен в конфигурации внешнего расположения, и у вас должнаCREATE MANAGED STORAGEбыть привилегия в конфигурации внешнего расположения. Можно использовать путь, определенный в конфигурации внешнего расположения или подпате (другими словами,'abfss://container@storageaccount.dfs.core.windows.net/finance'или'abfss://container@storageaccount.dfs.core.windows.net/finance/product'). Поддерживается в Databricks SQL или в кластерах под управлением Databricks Runtime 11.3 LTS и более поздних версий.См. также управляемые таблицы каталога Unity в Azure Databricks для Delta Lake и Apache Iceberg исоздание хранилища метаданных каталога Unity.
WITH DBPROPERTIES ( { property_name = property_value } [ , ... ] )
Свойства схемы, представленные в виде пар "ключ-значение".
ПАРАМЕТРЫ
Задает параметры конкретного типа подключения, необходимые для идентификации каталога в соединении.
optionКлюч параметра. Ключ может состоять из одного или нескольких идентификаторов, разделенных точкой или
STRINGлитералом.Ключи параметров должны быть уникальными и чувствительны к регистру.
valueЗначение параметра. Значение должно быть выражением
BOOLEAN,STRINGINTEGERилиDECIMALконстантой. Это значение также может быть вызовомSECRETфункции SQL. Например, этоvaluepasswordможет бытьsecret('secrets.r.us', 'postgresPassword')в отличие от ввода литерального пароля.
Примеры
-- Create schema `customer_sc`. This throws exception if schema with name customer_sc
-- already exists.
> CREATE SCHEMA customer_sc;
-- Create schema `customer_sc` only if schema with same name doesn't exist.
> CREATE SCHEMA IF NOT EXISTS customer_sc;
-- Create schema `experimental` with a case insensitive unicode default collation
> CREATE SCHEMA experimental DEFAULT COLLATION UNICODE_CI;
-- Create schema `customer_sc` only if schema with same name doesn't exist with
-- `Comments`,`Specific Location` and `Database properties`. LOCATION is not supported in Unity Catalog.
> CREATE SCHEMA IF NOT EXISTS customer_sc COMMENT 'This is customer schema' LOCATION '/samplepath'
WITH DBPROPERTIES (ID=001, Name='John');
-- Create schema with a different managed storage location than the metastore's. MANAGED LOCATION is supported only in Unity Catalog.
> CREATE SCHEMA customer_sc MANAGED LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/finance';
-- Verify that properties are set.
> DESCRIBE SCHEMA EXTENDED customer_sc;
database_description_item database_description_value
------------------------- --------------------------
Database Name customer_sc
Description This is customer schema
Location hdfs://hacluster/samplepath
Properties ((ID,001), (Name,John))