JDBC最简单的应用

一、一个JDBC程序的组成

1.导入需要的包和类(java.sql.*;)
2.加载合适的JDBC驱动
3.使用URL指定特定的数据库并建立连接
4.传输SQL语句至数据库
5.接收结果

6.关闭连接

  

  例子:

 
importjava.sql.*;
importjava.io.*;
importjava.lang.*;
classMyJDBC{
    static{
       try{Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
    }catch(Exception e){ //静态代码块
           e.printStackTrace();
       }
    }
    public static void main(String argv[]){
       try{
               Connection con = null;
          String url = "jdbc:db2:sample";
          if( argv.length == 0 )
          { con = DriverManager.getConnection(url); }
          else if( argv.length == 2 )
          {
           String userid = argv[0];
           String password = argv[1];
             con=DriverManager.getConnection(url,userid,password);
          }
          else
          { throw new Exception
              ("\n Usage: javaMyJDBC[,username,password]\n");
          }
       Statement stmt = con.createStatement();
       ResultSet rs = stmt.executeQuery
            ("SELECT EMPNO,LASTNAME " +
             "FROM employee " +
             "WHERE SALARY > 4000 " );
       while ( rs.next() ){
           System.out.println("empno=" + rs.getString(1) +
                     "lastname = " +rs.getString(2) );
       }
       rs.close();
       stmt.close();
       con.close();
    }catch(Exception e){
       e.printStackTrace();}
    }
}

二、执行select语句

例子:

Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery
(
"SELECT EMPNO, LASTNAME " +
" FROM TEMPL " +
" WHERE SALARY > 40000 " );
while ( rs.next() ) {
System.out.println("empno="+ rs.getString(1) +"lastname="+rs.getString(2) );
}
rs.close();
stmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}

说明:1.在遍历ResultSet前必须先执行next()方法。

三、执行update语句

不使用参数标识符:

例子:  

PreparedStatement pUpd =con.prepareStatement
("UPDATETEMPL " +
"SET SALARY=?"+
"WHERE EMPNO = ? ");
pUpd.setString(1,argv[1]);
pUpd.setString(2,argv[2]);
intnumRows = pUpd.executeUpdate();
System.out.println("Numberof rows updated " + numRows);
pUpd.close();

说明: 1.此处executeUpdate()会返回更新的行数

使用参数标识符

例子:

Statement updStmt = con.createStatement();
int numRows =updStmt.executeUpdate("UPDATE TEMPL " +" SET LASTNAME = 'Stohl'" +" WHERE EMPNO = '000110' ");
System.out.println("Numberof rows updated " + numRow);

说明:1.使用参数标识符可以多次执行语句。

 2.在SET子句和WHERE子句中都可以使用参数标识符

 3.setxxx()方法第一个参数是从1开始的

 4.此处executeUpdate()会返回更新的行数

四、执行insert语句

例子:  

String sql = null;
sql = "INSERT INTO TEMPL (EMPNO, LASTNAME,SALARY)"
+ "VALUES ('000110', 'Roth', 50000)",
stmt = con.createStatement();
insertCount = stmt.executeUpdate( sql );

五、执行delete语句

例子:  

PreparedStatementpstmt = null
Stringeno = "000110";
Stringmysql = null;
mysql= "DELETE FROM TEMPL WHERE EMPNO = ?";
pstmt= con.prepareStatement (mysql);
pstmt.setString(1, eno);
deleteCount= pstmt.executeUpdate();

说明:1.可以使用和update语句相同,PreparedStatement也可以使用Statement。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值