JDBC 操作數據庫(Access、Mysql、Mssqlserver、Oracle)

JDBC操作數據庫的步驟:

一、加載數據庫驅動

二、創建數據庫連接

三、執行SQL語句

四、獲取結果集

五、釋放資源

1.JDBC 操作Access數據庫

package xgn.database;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
//JDBC 連接access數據庫
public class access {
	public static void main(String[] args) throws SQLException {
		String connstr="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=d:\\db1.mdb";
		Connection conn= DriverManager.getConnection(connstr);
		Statement stmt= conn.createStatement();
		stmt.executeUpdate("insert into user1(username,password)values('Jim','1993')");
		ResultSet result= stmt.executeQuery("select * from user1");
		while(result.next()){
			System.out.println(result.getString("id")+result.getString("username"));
		}
		result.close();
		stmt.close();
		conn.close();
	}

}


2.JDBC操作Mysql

package xgn.database;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Types;

//jdbc 操作mysql
public class mysql {
	static{
		try {
			Class.forName("com.mysql.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			throw new RuntimeException(e);
		}
	}
	/**
	 * @param args
	 * @throws ClassNotFoundException 
	 */
	public static void main(String[] args) throws ClassNotFoundException {
		// TODO Auto-generated method stub
		String driver="com.mysql.jdbc.Driver";
		String connstr="jdbc:mysql://127.0.0.1:3306/stu";
		String user="root";
		String pwd="123";
		
		
		Connection conn=null;
		Statement stmt=null;
		ResultSet result=null;
		try{
			conn= DriverManager.getConnection(connstr, user, pwd);
			stmt= conn.createStatement();
			stmt.execute("use stu");
			
			//增
			stmt.executeUpdate("insert into tb1(bm,cp,sl,ssl,je)values(20,'99999',12,12,12)");
			//刪
			stmt.executeUpdate("delete from tb1 where id=1");
			//改
			stmt.executeUpdate("update tb1 set cp='111111' where id=2");
			//查
			result=stmt.executeQuery("select * from tb1");
			while(result.next()){
				System.out.println(result.getString("cp"));
			}
			String sql="call adddata(?,?,?,?,?,?)";
			//執行存儲過程
			CallableStatement pro_stmt= conn.prepareCall(sql);
			pro_stmt.setString(1, "35");
			pro_stmt.setString(2, "產品C");
			pro_stmt.setDouble(3, 12.00);
			pro_stmt.setDouble(4, 12.00);
			pro_stmt.setDouble(5, 12.00);
			pro_stmt.registerOutParameter(6, Types.VARCHAR);
			result= pro_stmt.executeQuery();
			
			//獲得輸出參數值
			System.out.println(pro_stmt.getString("cpid"));
			
			while(result.next()){
				System.out.println(result.getString("product"));
			}
			
			//事務
			conn.setAutoCommit(false);
			stmt.executeUpdate("insert into tb1(bm,cp,sl,ssl,je)values('36','產品D',12,12,12)");
			stmt.executeUpdate("insert into tb1(bm,cp,sl,ssl,je)values(18,'36','產品D',12,12,12)");
			
			
		}catch(Exception ex){
			System.out.println(ex.getMessage()+"aaaaaaa");
			System.out.println("出錯已回滾!");
		}finally{
			if(result!=null){
				try{
					result.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			if(stmt!=null){
				try{
					stmt.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			if(conn!=null){
				try{
					conn.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			
		}
	}

}


3.JDBC 操作Mssqlserver數據庫

package xgn.database;

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

public class mssqlserver {
	static {
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String connstr="jdbc:sqlserver://127.0.0.1;user=sa;password=123;";
		Connection conn=null;
		Statement stmt=null;
		ResultSet result=null;
		try{
			conn= DriverManager.getConnection(connstr);
			stmt=conn.createStatement();
			result=stmt.executeQuery("select sname from tb1");
			while(result.next()){
				System.out.println(result.getString("sname"));
			}
			conn.close();
		}catch(Exception ex){
			ex.printStackTrace();
		}finally{
			if(result!=null){
				try{
					result.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			if(stmt!=null){
				try{
					stmt.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			if(conn!=null){
				try{
					conn.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
		}
	}

}


4.JDBC 操作Oracle數據庫

package xgn.database;

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

public class oracle {
	static{
		try{
			Class.forName("oracle.jdbc.OracleDriver");
		}catch(Exception ex){
			new RuntimeException(ex);
		}
	}
	public static void main(String[] args){
		String url="jdbc:oracle:thin:@localhost:1521:ora1";
		String user="scott";
		String pwd="19930526";
		
		Connection conn=null;
		Statement stmt=null;
		ResultSet result=null;
		try{
			conn= DriverManager.getConnection(url, user, pwd);
			stmt=conn.createStatement();
			result=stmt.executeQuery("select * from student");
			while(result.next()){
				System.out.println(result.getString("sname"));
			}
			
		}catch(Exception ex){
			ex.printStackTrace();
		}finally{
			if(result!=null){
				try{
					result.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			if(stmt!=null){
				try{
					result.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
			if(conn!=null){
				try{
					conn.close();
				}catch(Exception ex){
					ex.printStackTrace();
				}
			}
		}
		
	}
}


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章