1. 程式人生 > 實用技巧 >Flink基礎(三十四):FLINK SQL(十)USE 語句

Flink基礎(三十四):FLINK SQL(十)USE 語句

USE 語句用來設定當前的 catalog 或者 database。

1 執行一個 USE 語句

可以使用 TableEnvironment 中的 executeSql() 方法執行 USE 語句,也可以在 SQL CLI 中執行 USE 語句。 若 USE 操作執行成功,executeSql() 方法返回 ‘OK’,否則會丟擲異常。

以下的例子展示瞭如何在 TableEnvironment 和 SQL CLI 中執行一個 USE 語句。

val env = StreamExecutionEnvironment.getExecutionEnvironment()
val tEnv = StreamTableEnvironment.create(env)

// create a catalog tEnv.executeSql("CREATE CATALOG cat1 WITH (...)") tEnv.executeSql("SHOW CATALOGS").print() // +-----------------+ // | catalog name | // +-----------------+ // | default_catalog | // | cat1 | // +-----------------+ // change default catalog tEnv.executeSql("USE CATALOG cat1") tEnv.executeSql(
"SHOW DATABASES").print() // databases are empty // +---------------+ // | database name | // +---------------+ // +---------------+ // create a database tEnv.executeSql("CREATE DATABASE db1 WITH (...)") tEnv.executeSql("SHOW DATABASES").print() // +---------------+ // | database name | // +---------------+ // | db1 |
// +---------------+ // change default database tEnv.executeSql("USE db1")
Flink SQL> CREATE CATALOG cat1 WITH (...);
[INFO] Catalog has been created.

Flink SQL> SHOW CATALOGS;
default_catalog
cat1

Flink SQL> USE CATALOG cat1;

Flink SQL> SHOW DATABASES;

Flink SQL> CREATE DATABASE db1 WITH (...);
[INFO] Database has been created.

Flink SQL> SHOW DATABASES;
db1

Flink SQL> USE db1;

2 USE CATLOAG

USE CATALOG catalog_name

設定當前的 catalog。所有後續命令未顯式指定 catalog 的將使用此 catalog。如果指定的的 catalog 不存在,則丟擲異常。預設的當前 catalog 是default_catalog

3 USE

USE [catalog_name.]database_name

設定當前的 database。所有後續命令未顯式指定 database 的將使用此 database。如果指定的的 database 不存在,則丟擲異常。預設的當前 database 是default_database