Hive刪除數據庫

本章介紹瞭如何在Hive刪除數據庫。模式和數據庫的使用是一樣的。

DROP DATABASE語句

DROP DATABASE是刪除所有的表並刪除數據庫的語句。它的語法如下:

DROP DATABASE StatementDROP (DATABASE|SCHEMA) [IF EXISTS] database_name
[RESTRICT|CASCADE];

下面的查詢用於刪除數據庫。假設要刪除的數據庫名稱爲userdb。

hive> DROP DATABASE IF EXISTS userdb;

以下是使用CASCADE查詢刪除數據庫。這意味着要全部刪除相應的表在刪除數據庫之前。

hive> DROP DATABASE IF EXISTS userdb CASCADE;

以下使用SCHEMA查詢刪除數據庫。

hive> DROP SCHEMA userdb;

此子句中添加在Hive0.6版本。

JDBC Program

在JDBC程序來刪除數據庫如下。

import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.DriverManager;

public class HiveDropDb {
private static String driverName = "org.apache.hadoop.hive.jdbc.HiveDriver";

public static void main(String[] args) throws SQLException {

  // Register driver and create driver instance
  Class.forName(driverName);

  // get connection
  Connection con = DriverManager.getConnection("jdbc:hive://localhost:10000/default", "", "");
  Statement stmt = con.createStatement();
  stmt.executeQuery("DROP DATABASE userdb");

  System.out.println(「Drop userdb database successful.」);

  con.close();

}
}

將該程序保存在一個名爲HiveDropDb.java文件。下面給出的是編譯和執行這個程序的命令。

$ javac HiveDropDb.java
$ java HiveDropDb

Output:

Drop userdb database successful.