创建数据库
描述
使用指定名称创建数据库。如果已存在同名数据库,则会抛出异常。
语法
CREATE { DATABASE | SCHEMA } [ IF NOT EXISTS ] database_name
[ COMMENT database_comment ]
[ LOCATION database_directory ]
[ WITH DBPROPERTIES ( property_name = property_value [ , ... ] ) ]
参数
-
database_name
指定要创建的数据库的名称。
-
IF NOT EXISTS
如果不存在,则使用给定名称创建数据库。如果已存在同名数据库,则不会发生任何事情。
-
database_directory
要在其中创建指定数据库的文件系统的路径。如果底层文件系统中不存在指定的路径,则此命令将使用该路径创建一个目录。如果未指定位置,则将在默认仓库目录中创建数据库,该目录的路径由静态配置 spark.sql.warehouse.dir 配置。
-
database_comment
指定数据库的描述。
-
WITH DBPROPERTIES ( property_name=property_value [ , … ] )
以键值对的形式指定数据库的属性。
示例
-- Create database `customer_db`. This throws exception if database with name customer_db
-- already exists.
CREATE DATABASE customer_db;
-- Create database `customer_db` only if database with same name doesn't exist.
CREATE DATABASE IF NOT EXISTS customer_db;
-- Create database `customer_db` only if database with same name doesn't exist with
-- `Comments`,`Specific Location` and `Database properties`.
CREATE DATABASE IF NOT EXISTS customer_db COMMENT 'This is customer database' LOCATION '/user'
WITH DBPROPERTIES (ID=001, Name='John');
-- Verify that properties are set.
DESCRIBE DATABASE EXTENDED customer_db;
+-------------------------+--------------------------+
|database_description_item|database_description_value|
+-------------------------+--------------------------+
| Database Name| customer_db|
| Description| This is customer database|
| Location| hdfs://hacluster/user|
| Properties| ((ID,001), (Name,John))|
+-------------------------+--------------------------+