Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:
Databricks SQL
Databricks Runtime
Létrehoz egy sémát (adatbázist) a megadott névvel. Ha már létezik ugyanazzal a névvel rendelkező séma, a rendszer kivételt jelez.
Szemantika
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 } [ , ... ] ) ] [...]
Paraméterek
-
A létrehozandó séma neve.
A katalógusban
hive_metastorelétrehozott sémák csak alfanumerikus ASCII-karaktereket és aláhúzásjeleket (INVALID_SCHEMA_OR_RELATION_NAME) tartalmazhatnak. HA NEM LÉTEZIK
Létrehoz egy sémát a megadott névvel, ha az nem létezik. Ha már létezik ilyen nevű séma, semmi sem fog történni.
HELY
schema_directoryLOCATIONa Unity Catalog nem támogatja. Ha egy séma tárolási helyét szeretné megadni a Unity Catalogban, használja a következőtMANAGED LOCATION: .schema_directorySTRINGegy literál. Annak a fájlrendszernek az elérési útja, amelyben a megadott sémát létre kell hozni. Ha a megadott elérési út nem létezik a mögöttes fájlrendszerben, létrehoz egy könyvtárat az elérési úttal. Ha a hely nincs megadva, a séma az alapértelmezett raktárkönyvtárban jön létre, amelynek elérési útját a statikus konfigurációspark.sql.warehouse.dirkonfigurálja.Figyelmeztetés
Ha egy séma (adatbázis) regisztrálva van a munkaterületszintű Hive-metaadattárban, a séma
CASCADEbeállítással történő elvetése esetén a sémahelyen lévő összes fájl rekurzív módon törlődik, függetlenül a tábla típusától (felügyelt vagy külső).Ha a séma egy Unity Catalog-metaadattárban van regisztrálva, a Unity Catalog felügyelt táblák fájljai rekurzív módon törlődnek. A külső táblák fájljai azonban nem törlődnek. Ezeket a fájlokat közvetlenül a felhőtárhely-szolgáltatóval kell kezelnie.
Ezért a véletlen adatvesztés elkerülése érdekében soha ne regisztráljon sémát hive-metaadattárban meglévő adatokkal rendelkező helyre. Ne hozzon létre új külső táblákat a Hive metaadattár-sémái által kezelt vagy a Unity Catalog által felügyelt táblákat tartalmazó helyen.
MEGJEGYZÉS
schema_commentEgy
STRINGliterál. A séma leírása.ALAPÉRTELMEZETT BETŰREND default_collation_name
A következőre vonatkozik:
Databricks SQL
Databricks Runtime 17.1 és újabbOpcionálisan meghatározza a sémában definiált objektumok alapértelmezett rendezési módját. Ha nincs megadva, az alapértelmezett rendezés öröklődik a katalógusból.
FELÜGYELT HELY
location_pathMANAGED LOCATIONnem kötelező, és unitykatalógusra van szükség. Ha meg szeretné adni a munkaterületszintű Hive-ben vagy külső féltől származó metaadattárban regisztrált sémák tárolási helyét, használjaLOCATIONhelyette.location_pathliterálnak kell lennieSTRING. Megadja a séma tárolási gyökérhelyének elérési útját, amely eltér a katalógus vagy a metaadattár tárológyökerének helyétől. Ezt az elérési utat egy külső helykonfigurációban kell meghatározni, és rendelkeznie kell aCREATE MANAGED STORAGEkülső hely konfigurációjára vonatkozó jogosultsággal. Használhatja a külső hely konfigurációjában definiált elérési utat vagy egy segédútvonalat (más szóval,'abfss://container@storageaccount.dfs.core.windows.net/finance'vagy'abfss://container@storageaccount.dfs.core.windows.net/finance/product'). A Databricks SQL-ben vagy a Databricks Runtime 11.3 LTS-t és újabb verziót futtató fürtökön támogatott.Lásd még a Unity Catalog által felügyelt táblákat a Delta Lake-hez és az Apache Iceberghez készült Azure Databricksben , és hozzon létre egy Unity Catalog-metaadattárat.
A DBPROPERTIES ( { property_name = property_value } [ , ... ] )
A séma tulajdonságai kulcs-érték párokban.
BEÁLLÍTÁSOK
Beállítja a kapcsolattípus-specifikus paramétereket, amelyek szükségesek a katalógus azonosításához a kapcsolaton.
optionA beállításkulcs. A kulcs egy vagy több állhat.
A beállításkulcsnak egyedinek kell lennie, és megkülönbözteti a kis- és nagybetűket.
valueA beállítás értéke. Az értéknek egy
BOOLEAN,STRING,INTEGERvagyDECIMALállandó kifejezésnek kell lennie. Az érték lehet az SQL-függvény hívásaSECRETis. Előfordulhat például, hogy avalueforpasswordszósecret('secrets.r.us', 'postgresPassword')nem a literális jelszót adja meg.
Példák
-- 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))