Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:
Databricks SQL
Databricks Runtime
Belirtilen ada sahip bir veritabanı şeması oluşturur. Aynı ada sahip bir şema zaten varsa, bir istisna fırlatılır.
Sözdizimi
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 } [ , ... ] ) ] [...]
Parametreler
-
Oluşturulacak şemanın adı.
hive_metastorekataloğunda oluşturulan şemalar yalnızca alfasayısal ASCII karakterlerini ve alt çizgilerini (INVALID_SCHEMA_OR_RELATION_NAME) içerebilir. VAR OLMADIĞINDA
Mevcut değilse verilen isimle bir şema oluşturur. Aynı ada sahip bir şema zaten mevcutsa, herhangi bir işlem gerçekleşmez.
YER
schema_directoryLOCATIONUnity Kataloğu'nda desteklenmez. Unity Kataloğu'nda bir şema için depolama konumu belirtmek istiyorsanızMANAGED LOCATIONkullanın.schema_directorybir sabittirSTRING. Belirtilen şemanın oluşturulacağı dosya sisteminin yolu. Belirtilen yol temel alınan dosya sisteminde yoksa, yolu olan bir dizin oluşturur. Eğer konum belirtilmemişse, yolu statik yapılandırmaspark.sql.warehouse.dirtarafından belirlenmiş olan varsayılan ambar dizininde şema oluşturulur.Uyarı
Çalışma alanı düzeyinde Hive meta veri deponuzda bir şema (veritabanı) kayıtlıysa,
CASCADEseçeneğini kullanarak bu şemayı bırakmak, tablo türüne (yönetilen veya dış) bakılmaksızın bu şema konumundaki tüm dosyaların özyinelemeli olarak silinmesine neden olur.Şema bir Unity Kataloğu meta veri deposuna kayıtlıysa, Unity Kataloğu yönetilen tablolar dosyaları yinelemeli olarak silinir. Ancak, dış tablo
dosyaları silinmez. Bu dosyaları doğrudan bulut depolama sağlayıcısını kullanarak yönetmeniz gerekir. Bu nedenle, yanlışlıkla veri kaybını önlemek için hive meta veri deposundaki bir şemayı hiçbir zaman mevcut verileri içeren bir konuma kaydetmemelisiniz. Yeni dış tabloları, Hive meta veri deposu şemaları tarafından yönetilen veya Unity Kataloğu ile yönetilen tabloları içeren bir konumda oluşturmamalısınız.
YORUM
schema_commentDeğişmez
STRINGdeğer. Şemanın açıklaması.VARSAYıLAN HARMANLAMA default_collation_name
Şunun için geçerlidir:
Databricks SQL
Databricks Runtime 17.1 ve üzeriİsteğe bağlı olarak şema içinde tanımlanan nesneler için varsayılan harmanlamayı tanımlar. Belirtilmezse, varsayılan harmanlama katalogdan devralınır.
YÖNETILEN KONUM
location_pathMANAGED LOCATIONisteğe bağlıdır ve Unity Kataloğu gerektirir. Çalışma alanı düzeyinde Hive veya üçüncü taraf meta veri deponuzda kayıtlı bir şema için depolama konumu belirtmek istiyorsanız bunun yerineLOCATIONkullanın.location_pathsabitSTRINGolmalıdır. Kataloğun veya meta veri deposunun depolama kök konumundan farklı olan şemanın depolama kök konumunun yolunu belirtir. Bu yol bir dış konum yapılandırmasında tanımlanmalıdır ve dış konum yapılandırmasında ayrıcalığınız olmalıdırCREATE MANAGED STORAGE. Dış konum yapılandırmasında veya bir alt yolda (başka bir deyişle'abfss://container@storageaccount.dfs.core.windows.net/finance'veya'abfss://container@storageaccount.dfs.core.windows.net/finance/product') tanımlanan yolu kullanabilirsiniz. Databricks SQL'de veya Databricks Runtime 11.3 LTS ve üzerini çalıştıran kümelerde desteklenir.Ayrıca bkz Azure Databricks'te Delta Lake ve Apache Iceberg için Unity Kataloğu tarafından yönetilen tablolar ve Unity Kataloğu meta deposu oluşturma.
WITH DBPROPERTIES ( { property_name = property_value } [ , ... ] )
Anahtar-değer çiftlerindeki şemanın özellikleri.
SEÇENEKLER
Bağlantıdaki kataloğu tanımlamak için gereken bağlantı türüne özgü parametreleri ayarlar.
optionSeçenek tuşu. Anahtar, bir veya daha fazla belirleyici nokta ile ayrılmış ya da bir
STRINGdeğişmez değer içerebilir.Seçenek anahtarları benzersiz ve büyük/küçük harfe duyarlı olmalıdır.
valueSeçeneğin değeri. Değer bir
BOOLEAN,STRING,INTEGERveyaDECIMALsabit ifadesi olmalıdır. Değer, SQL işlevineSECRETyapılan bir çağrı da olabilir. Örneğin,valueiçinpassword, doğrudan parolanın girilmesi yerinesecret('secrets.r.us', 'postgresPassword')içerebilir.
Örnekler
-- 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))