[size=large][color=blue]1. jdbc 六个步骤 [/color][/size]
[size=medium] 1)注册Driver;
Class.forName("oracle.jdbc.driver.OracleDriver");
2)获得连接
String url="jdbc:oracle:thin:@192.168.0.200:1521:oradb10g";
Connection conn=DriverManager.getConnection(url,"用户","密码");
3)创建Statement,stm=conn.createStatement();
4)执行sql, stm.executeUpdate(sql);
5)select--->处理结果集
ResultSet rs=stm.executeQuery(sql);
while(rs.next()){ System.out.println(rs.getInt(1)+"------"+rs.getString(2));
}
6)释放资源(rs,stm,conn)
if(rs!=null) try{ rs.close();} catch(Exception ee){}
if(stm!=null) try{ stm.close();} catch(Exception ee){}
if(conn!=null) try{ conn.close();} catch(Exception ee){}[/size]
[size=x-large][color=blue]
2. 注册Driver的三种方式 [/color][/size]
[size=medium]
1)Class.forName("oracle.jdbc.driver.OracleDriver");
2)Driver d=new oracle.jdbc.driver.OracleDriver();
DriverManager.registDriver(d);
3)程序里没有指定
java-Djdbc.drivers=oracle.jdbc.driver.OracleDriver classname [/size][size=large][color=blue] 、
3. ResultSet遍历 [/color][/size]
[size=medium]1) next()---->boolean
2) get***(int) get***(columnname) getString("name");
开始时指针指向第一行的上一行,最后指针指向最后一行 的下一行
[color=blue]
4. 三种execute方法的区别 [/color]
1)stm.execute(sql) all boolean(ResultSet)(返回布尔型,判断是否有结果集)
2)stm.executeQuery(String selectsql) --->ResultSet(返回结果集,sql是查询语句)
3)stm.executeUpdate(sql) --->int(db row) (返回int,判断改变的行数,一般执行,update,delete,insert)
---->delete update insert [/size]
[size=medium][color=red]Statement和PreparedStatement[/color][/size] [size=medium]
Statement是逐条发送语句(可以执行多条语句),PreparedStatement是先存储sql再一起发送(在sql需要设值的时候,效率要高,但只能执行一条语句)例子:
String sql=
"insert into jdbc_users(id,name) values(users_seq.nextval,? )";
pstm=conn.prepareStatement(sql);
pstm.setString(1, names[i]);//1代表是提几个问号,后面是设值
pstm.executeUpdate();一起提交[/size]
[size=medium] 1)注册Driver;
Class.forName("oracle.jdbc.driver.OracleDriver");
2)获得连接
String url="jdbc:oracle:thin:@192.168.0.200:1521:oradb10g";
Connection conn=DriverManager.getConnection(url,"用户","密码");
3)创建Statement,stm=conn.createStatement();
4)执行sql, stm.executeUpdate(sql);
5)select--->处理结果集
ResultSet rs=stm.executeQuery(sql);
while(rs.next()){ System.out.println(rs.getInt(1)+"------"+rs.getString(2));
}
6)释放资源(rs,stm,conn)
if(rs!=null) try{ rs.close();} catch(Exception ee){}
if(stm!=null) try{ stm.close();} catch(Exception ee){}
if(conn!=null) try{ conn.close();} catch(Exception ee){}[/size]
[size=x-large][color=blue]
2. 注册Driver的三种方式 [/color][/size]
[size=medium]
1)Class.forName("oracle.jdbc.driver.OracleDriver");
2)Driver d=new oracle.jdbc.driver.OracleDriver();
DriverManager.registDriver(d);
3)程序里没有指定
java-Djdbc.drivers=oracle.jdbc.driver.OracleDriver classname [/size][size=large][color=blue] 、
3. ResultSet遍历 [/color][/size]
[size=medium]1) next()---->boolean
2) get***(int) get***(columnname) getString("name");
开始时指针指向第一行的上一行,最后指针指向最后一行 的下一行
[color=blue]
4. 三种execute方法的区别 [/color]
1)stm.execute(sql) all boolean(ResultSet)(返回布尔型,判断是否有结果集)
2)stm.executeQuery(String selectsql) --->ResultSet(返回结果集,sql是查询语句)
3)stm.executeUpdate(sql) --->int(db row) (返回int,判断改变的行数,一般执行,update,delete,insert)
---->delete update insert [/size]
[size=medium][color=red]Statement和PreparedStatement[/color][/size] [size=medium]
Statement是逐条发送语句(可以执行多条语句),PreparedStatement是先存储sql再一起发送(在sql需要设值的时候,效率要高,但只能执行一条语句)例子:
String sql=
"insert into jdbc_users(id,name) values(users_seq.nextval,? )";
pstm=conn.prepareStatement(sql);
pstm.setString(1, names[i]);//1代表是提几个问号,后面是设值
pstm.executeUpdate();一起提交[/size]