本教程提供了有關(guān)如何使用JDBC應(yīng)用程序創(chuàng)建數(shù)據(jù)庫的示例。在執(zhí)行以下示例之前,請確保已具備以下條件:
您應(yīng)該具有管理員權(quán)限,才能在給定的架構(gòu)中創(chuàng)建數(shù)據(jù)庫。要執(zhí)行以下示例,您需要將用戶名和密碼替換為實(shí)際的用戶名和密碼。
您的MySQL或您正在使用的任何數(shù)據(jù)庫均已啟動并正在運(yùn)行。
使用JDBC應(yīng)用程序創(chuàng)建新數(shù)據(jù)庫需要執(zhí)行以下步驟-
導(dǎo)入包:要求您包含包含數(shù)據(jù)庫編程所需的JDBC類的軟件包。通常,使用 import java.sql.* 就足夠了。
注冊 JDBC 驅(qū)動程序: 要求您初始化驅(qū)動程序,以便您可以打開與數(shù)據(jù)庫的通信通道。
建立連接:需要使用DriverManager.getConnection()方法來創(chuàng)建一個Connection對象,該對象表示與數(shù)據(jù)庫服務(wù)器的物理連接。要創(chuàng)建新的數(shù)據(jù)庫,在準(zhǔn)備數(shù)據(jù)庫URL時,無需提供任何數(shù)據(jù)庫名稱,如下面的示例所述。
執(zhí)行查詢: 需要使用Statement類型的對象來構(gòu)建SQL語句并將其提交到數(shù)據(jù)庫。
清理:需要顯式關(guān)閉所有數(shù)據(jù)庫資源,而不是依賴JVM的垃圾回收。
復(fù)制并粘貼以下示例到JDBCExample.java中,如下編譯并運(yùn)行:
//步驟1.導(dǎo)入所需的軟件包
import java.sql.*;
public class JDBCExample {
// JDBC驅(qū)動程序名稱和數(shù)據(jù)庫URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost/";
// 數(shù)據(jù)庫憑證
static final String USER = "username";
static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
//步驟2:注冊JDBC驅(qū)動程序
Class.forName("com.mysql.jdbc.Driver");
//步驟3:建立連接
System.out.println("Connecting to database...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
//步驟4:執(zhí)行查詢
System.out.println("Creating database...");
stmt = conn.createStatement();
String sql = "CREATE DATABASE STUDENTS";
stmt.executeUpdate(sql);
System.out.println("Database created successfully...");
}catch(SQLException se){
//處理JDBC錯誤
se.printStackTrace();
}catch(Exception e){
//處理Class.forName的錯誤
e.printStackTrace();
}finally{
//用于關(guān)閉資源
try{
if(stmt!=null)
stmt.close();
}catch(SQLException se2){
}
try{
if(conn!=null)
conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}//結(jié)束try
System.out.println("Goodbye!");
}//結(jié)束main
}//結(jié)束JDBCExample現(xiàn)在,讓我們編譯上面的示例,如下所示:
C:\>javac JDBCExample.java C:\>
運(yùn)行時JDBCExample,它將產(chǎn)生以下結(jié)果-
C:\>java JDBCExample Connecting to database... Creating database... Database created successfully... Goodbye! C:\>