本章介紹了如何在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.
