1. 程式人生 > >JDBC訪問數據庫的步驟

JDBC訪問數據庫的步驟

cut forname pda exception sof dstat 加載 otf base

1.JDBC訪問數據庫的步驟

    1)加載驅動

    Class.forName("驅動程序類");

    2)與數據建立連接

    String url="jdbc:數據庫://ip地址:端口;數據庫";

    String  name="數據庫用戶名";

    String password="密碼"; 

    Connection conn=DriverManager.getConnection(url,name,password);

    3)獲得SQL語句,執行SQL返回結果

      Statement stat=conn.createStatement();

      ResultSet rs=stat.executeQuery("sql語句");

    4)處理結果集

    while(rs.next()){

      類型 屬性 =rs.get類型("字段名/數字");

    }

    5)關閉連接

      rs.close();

      stat.close();

      conn.close();

2.API方法:

DriverManager:管理驅動

connection :數據庫連接

Statement: 執行sql語句

PrepareStatement:執行sql語句

  1)executeQuery();執行查詢語句,

  2)executeUpdate();執行增刪查改sqlexecute()

  3)execute( );執行任何的sql;

public static void main(String [] args){
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url="jdbc:sqlserver://localhost:1433;DatabaseName=epet";
String username="sa";
String password="123456";
Connection conn=DriverManager.getConnection(url,username,password);
// Statement stat=conn.createStatement();
// String sql="insert into DEPT(DEPTNO,dname,LOC)values(800,‘szd‘,‘yiyang‘)";
// String sql="update DEPT set DNAME=‘szb1‘ where DEPTNO=800";
// String sql="delete from dept where deptno=800";
// stat.executeUpdate(sql);
// stat.close();
// conn.close();
int deptno =200;
String dname="ss";
String loc="zz";
String sql="insert into DEPT(DEPTNO,dname,LOC) values(?,?,?)";

//PreparedStatement使用預編譯語句,避免sql註入。
PreparedStatement pst=conn.prepareStatement(sql);
pst.setInt(1, deptno);
pst.setString(2, dname);
pst.setString(3, loc);
pst.executeUpdate();
pst.close();
conn.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}

}

JDBC訪問數據庫的步驟