CREATE DATABASE
描述
创建具有指定名称的数据库。如果已存在同名的数据库,则会引发异常。
语法
CREATE { DATABASE | SCHEMA | NAMESPACE } [ 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 [ , ... ] )
以键值对形式指定数据库的属性。
示例
-- 创建数据库 `customer_db`。在名字为 `customer_db` 的数据库已经存在时会抛出异常。
CREATE DATABASE customer_db;
-- 仅当同名数据库不存在时创建数据库 `customer_db`.
CREATE DATABASE IF NOT EXISTS customer_db;
-- 仅当同名数据库不存在时创建具有 `注解` , `特定位置` 和 `数据库属性` 的数据库 `customer_db`。
CREATE DATABASE IF NOT EXISTS customer_db COMMENT 'This is customer database' LOCATION '/user'
WITH DBPROPERTIES (ID=001, Name='John');
-- 确认属性已经被设置.
DESCRIBE DATABASE EXTENDED customer_db;
+--------------+-------------+
| info_name| info_value|
+--------------+-------------+
| Catalog Name|spark_catalog|
|Namespace Name| lyw_test2|
| Comment| |
| Location| lyw_test2.db|
| Properties| |
+--------------+-------------+
相关语句
TODO
- create database的comment,properties和location不生效