
# CREATE VIRTUAL SCHEMA
#### CREATE/DROP/SHOW VIRTUAL SCHEMA(S)
- **CREATE**
  HetuEngine中的CREATE语句用来创建SCHEMA映射，通过映射信息对外开放本域数据源。
  语法如下：
  ```
  CREATE VIRTUAL SCHEMA [ IF NOT EXISTS ] [ ctlg_dest.]schema_name WITH ( [catalog = ctlg_name,] schema = schm_name, [property_name = expression, ...] )
  ```
  ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
  创建一个virtual schema，需要在WITH中提供具体映射的schema信息。
  ctlg_dest为在哪个数据源创建virtual schema，参数可选，如果不指定则取当前Session中的catalog，如果当前Session中也未指定catalog则会创建失败。
  WITH必选，schema参数必选，catalog参数可选（如果不指定则取当前Session中的catalog）。
  样例语句：
  ```
  CREATE VIRTUAL SCHEMA hive_default WITH (catalog = 'hive', schema = 'default');
  ```
  
- **DROP**
  HetuEngine中的DROP语句用来删除SCHEMA映射。
  语法如下：
  ```
  DROP VIRTUAL SCHEMA [ IF EXISTS ] schema_name
  ```
  ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
  schema_name也可以替换为全限定名（catalogName.virtualSchema）。
  样例语句：
  ```
  DROP VIRTUAL SCHEMA hive_default;
  ```
  
- **SHOW**
  HetuEngine中的SHOW语句用来查询所有SCHEMA映射。
  语法如下：
  ```
  SHOW VIRTUAL SCHEMAS [ FROM catalog ] [ LIKE pattern ]
  ```
  样例语句：
  ```
  SHOW VIRTUAL SCHEMAS;
  ```
  
 
