本文目錄一覽:
如何使用jdbc連接mysql數據庫
用Jdbc連接MySql服務器還是很方便的。
首先,將jdbc導入工程,或者將jdbc放到ClassPath里,這裡我利用Eclipse直接導入jdbc jar文件,不羅嗦了。
然後,制定DriverManager,利用最簡單的方法,Class類的froName直接完成,代碼:
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
然後,實例化一個鏈接Connection,注意用戶名和密碼,有幾個方法可供選擇,這裡我用的是DirverManager類的getConnection(String url, String user, String password)方法。具體使用:DriverManager
例如:Connection conn=DriverManager.getConnection(“jdbc:mysql://localhost/mydatabase”, “root”, “1234”);
下一步,建立用於執行sql語句的Statement,這個容易,一行代碼搞定:
Statement stat=conn.createStatement();
最後就可以利用stat實例執行sql語句了
怎樣使用jdbc訪問mysql數據庫
JDBC連接MYSQL數據庫:
package cn.outofmemory.test;
import java.sql.Connection;
import java.sql.DriverManager;
public class Mysql {
public static void main(String arg[]) {
try {
Connection con = null; //定義一個MYSQL鏈接對象
Class.forName(“com.mysql.jdbc.Driver”).newInstance(); //MYSQL驅動
con = DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/test”, “root”, “root”); //鏈接本地MYSQL
System.out.print(“yes”);
} catch (Exception e) {
System.out.print(“MYSQL ERROR:” + e.getMessage());
}
}
}
Class.forName(“com.mysql.jdbc.Driver”).newInstance(); 我們鏈接的是MYSQL數據庫,所以需要一個MYSQL的數據庫驅動,如果你的環境中沒有安裝,
可以下載:mysql-connector-java-5.1.17-bin.jar JAR包,然後放進jdk1.6.0_37\jre\lib\ext 重啟eclispe 就可以在JRE系統庫中看到。
con = DriverManager.getConnection;(“jdbc:mysql://127.0.0.1:3306/test”, “root”, “root”); 是鏈接數據庫的語句,
返回Connection con;對象。參數格式:(“jdbc:mysql://ip:端口/數據庫名稱”, 用戶名,密碼)
寫入一條數據
package main;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Mysql {
/**
* 入口函數
* @param arg
*/
public static void main(String arg[]) {
try {
Connection con = null; //定義一個MYSQL鏈接對象
Class.forName(“com.mysql.jdbc.Driver”).newInstance(); //MYSQL驅動
con = DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/test”, “root”, “root”); //鏈接本地MYSQL
Statement stmt; //創建聲明
stmt = con.createStatement();
//新增一條數據
stmt.executeUpdate(“INSERT INTO user (username, password) VALUES (‘init’, ‘123456’)”);
ResultSet res = stmt.executeQuery(“select LAST_INSERT_ID()”);
int ret_id;
if (res.next()) {
ret_id = res.getInt(1);
System.out.print(ret_id);
}
} catch (Exception e) {
System.out.print(“MYSQL ERROR:” + e.getMessage());
}
}
}
stmt.executeUpdate INSERT; DELETE; UPDATE;語句都用executeUpdate函數來操作
stmt.executeQuery SELECT;語句都用stmt.executeQuery函數來操作
ResultSet res = stmt.executeQuery;(“select LAST;_INSERT_ID()”);
查詢最後插入數據的ID號,返回ResultSet res;對象
刪除和更新數據
package main;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Mysql {
/**
* 入口函數
* @param arg
*/
public static void main(String arg[]) {
try {
Connection con = null; //定義一個MYSQL鏈接對象
Class.forName(“com.mysql.jdbc.Driver”).newInstance(); //MYSQL驅動
con = DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/test”, “root”, “root”); //鏈接本地MYSQL
Statement stmt; //創建聲明
stmt = con.createStatement();
//新增一條數據
stmt.executeUpdate(“INSERT INTO user (username, password) VALUES (‘init’, ‘123456’)”);
ResultSet res = stmt.executeQuery(“select LAST_INSERT_ID()”);
int ret_id;
if (res.next()) {
ret_id = res.getInt(1);
System.out.print(ret_id);
}
//刪除一條數據
String sql = “DELETE FROM user WHERE id = 1”;
long deleteRes = stmt.executeUpdate(sql); //如果為0則沒有進行刪除操作,如果大於0,則記錄刪除的條數
System.out.print(“DELETE:” + deleteRes);
//更新一條數據
String updateSql = “UPDATE user SET username = ‘xxxx’ WHERE id = 2”;
long updateRes = stmt.executeUpdate(updateSql);
System.out.print(“UPDATE:” + updateRes);
} catch (Exception e) {
System.out.print(“MYSQL ERROR:” + e.getMessage());
}
}
}
刪除和更新數據都使用stmt.executeUpdate函數。
刪除和更新數據都會返回一個Long的結果,如果為0,則刪除或者更新失敗,如果大於0則是操作刪除的記錄數
查詢語句
package main;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
public class Mysql {
/**
* 入口函數
* @param arg
*/
public static void main(String arg[]) {
try {
Connection con = null; //定義一個MYSQL鏈接對象
Class.forName(“com.mysql.jdbc.Driver”).newInstance(); //MYSQL驅動
con = DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/test”, “root”, “root”); //鏈接本地MYSQL
Statement stmt; //創建聲明
stmt = con.createStatement();
//新增一條數據
stmt.executeUpdate(“INSERT INTO user (username, password) VALUES (‘init’, ‘123456’)”);
ResultSet res = stmt.executeQuery(“select LAST_INSERT_ID()”);
int ret_id;
if (res.next()) {
ret_id = res.getInt(1);
System.out.print(ret_id);
}
//刪除一條數據
String sql = “DELETE FROM user WHERE id = 1”;
long deleteRes = stmt.executeUpdate(sql); //如果為0則沒有進行刪除操作,如果大於0,則記錄刪除的條數
System.out.print(“DELETE:” + deleteRes);
//更新一條數據
String updateSql = “UPDATE user SET username = ‘xxxx’ WHERE id = 2”;
long updateRes = stmt.executeUpdate(updateSql);
System.out.print(“UPDATE:” + updateRes);
//查詢數據並輸出
String selectSql = “SELECT * FROM user”;
ResultSet selectRes = stmt.executeQuery(selectSql);
while (selectRes.next()) { //循環輸出結果集
String username = selectRes.getString(“username”);
String password = selectRes.getString(“password”);
System.out.print(“\r\n\r\n”);
System.out.print(“username:” + username + “password:” + password);
}
} catch (Exception e) {
System.out.print(“MYSQL ERROR:” + e.getMessage());
}
}
}
查詢語句使用stmt.executeQuery函數
rs.absolute() //絕對位置,負數表示從後面數
rs.first()第一條
rs.last()最後一條
rs.previoust()前一條
rs.next()後一條
rs.beforeFirst()第一條之前
rs.afterLast()最後之後
rs.isFirst(),rs.isLast(),rs.isBeforeFirst(),rs.isAfterLast
怎麼通過jdbc連接mysql數據庫
•創建一個以JDBC連接數據庫的程序,包含7個步驟:
1、加載JDBC驅動程序:
在連接數據庫之前,首先要加載想要連接的數據庫的驅動到JVM(Java虛擬機),
這通過java.lang.Class類的靜態方法forName(String className)實現。
例如:
try{
//加載MySql的驅動類
Class.forName(“com.mysql.jdbc.Driver”) ;
}catch(ClassNotFoundException e){
System.out.println(“找不到驅動程序類 ,加載驅動失敗!”);
e.printStackTrace() ;
}
成功加載後,會將Driver類的實例註冊到DriverManager類中。
2、提供JDBC連接的URL
•連接URL定義了連接數據庫時的協議、子協議、數據源標識。
•書寫形式:協議:子協議:數據源標識
協議:在JDBC中總是以jdbc開始
子協議:是橋連接的驅動程序或是數據庫管理系統名稱。
數據源標識:標記找到數據庫來源的地址與連接端口。
例如:(MySql的連接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=truecharacterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding設置為
gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字符編碼方式。
3、創建數據庫的連接
•要連接數據庫,需要向java.sql.DriverManager請求並獲得Connection對象,
該對象就代表一個數據庫的連接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法傳入指定的欲連接的數據庫的路徑、數據庫的用戶名
怎樣用jdbc連接mysql數據庫
import java.sql.*;
public class MysqlTest {
public static void main(String[] args){
// 驅動程序名
String driver = “com.mysql.jdbc.Driver”;
// URL指向要訪問的數據庫名world
String url = “jdbc:mysql://127.0.0.1:3306/world”;
// MySQL配置時的用戶名
String user = “root”;
// MySQL配置時的密碼
String password = “123456”;
String name;
try {
// 加載驅動程序
Class.forName(driver);
// 連續數據庫
Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed())
System.out.println(“Succeeded connecting to the Database!”);
// statement用來執行SQL語句
Statement statement = conn.createStatement();
// 要執行的SQL語句
String sql = “select * from city”;
// 結果集
ResultSet rs = statement.executeQuery(sql);
while(rs.next()) {
// 選擇Name這列數據
name = rs.getString(“Name”);
// 輸出結果
System.out.println(rs.getString(“CountryCode”) + “\t” + name);
}
rs.close(); conn.close(); }
catch(ClassNotFoundException e) {
System.out.println(“Sorry,can`t find the Driver!”);
e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/193899.html