java数据库操作
㈠ 如何在java程序中访问mysql数据库中的数据并进行简单的操作
参考代码:
package 数据库编程;
import java.sql.*;
public class 数据库连接 {
public static void main(String[] args) throws SQLException{
//1.加载驱动程序
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//2.创建与DB数据库的连接
//连接字符串
String url="jdbc:mysql://192.168.1.101:3306/java数据库?user=root&password=humin";
Connection con=DriverManager.getConnection(url);
//进行读写
if(!con.isClosed()){
System.out.print("欢迎访问数据库!\n想做什么啊………………\n");
Statement st=con.createStatement();
ResultSet rs= st.executeQuery("select * from stu");
while(rs.next()){
System.out.print( rs.getString("stuid")+","+rs.getString("name")+","+rs.getString("sex")+","+rs.getString("age")+","+rs.getString("address")+","+rs.getString("tel")+"\n");
}
}
//关闭数据库
con.close();
}
}
㈡ 怎么使用JAVA连接数据库
1、加载驱动程序。

处理结果两种情况:
1、执行更新返回的是本次操作影响到的记录数。
2、执行查询返回的结果是一个ResultSet对象。
ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 行中数据的访问。
(2)java数据库操作扩展阅读:
Statement
要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3 种类型:
1、执行静态SQL语句。通常通过Statement实例实现。
2、执行动态SQL语句。通常通过PreparedStatement实例实现。
3、执行数据库存储过程。通常通过CallableStatement实例实现。
㈢ java 多线程操作数据库
//将数据库中的数据条数分段
publicvoiddivision(){
//获取要导入的总的数据条数
Stringsql3="SELECTcount(*)FROM[CMD].[dbo].[my1]";
try{
pss=cons.prepareStatement(sql3);
rss=pss.executeQuery();
while(rss.next()){
System.out.println("总记录条数:"+rss.getInt(1));
sum=rss.getInt(1);
}
//每30000条记录作为一个分割点
if(sum>=30000){
n=sum/30000;
resie=sum%30000;
}else{
resie=sum;
}
System.out.println(n+""+resie);
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
线程类
publicMyThread(intstart,intend){
this.end=end;
this.start=start;
System.out.println("处理掉余数");
try{
System.out.println("--------"+Thread.currentThread().getName()+"------------");
Class.forName(SQLSERVERDRIVER);
System.out.println("加载sqlserver驱动...");
cons=DriverManager.getConnection(CONTENTS,UNS,UPS);
stas=cons.createStatement();
System.out.println("连接SQLServer数据库成功!!");
System.out.println("加载mysql驱动.....");
Class.forName(MYSQLDRIVER);
con=DriverManager.getConnection(CONTENT,UN,UP);
sta=con.createStatement();
//关闭事务自动提交
con.setAutoCommit(false);
System.out.println("连接mysql数据库成功!!");
}catch(Exceptione){
e.printStackTrace();
}
//TODOAuto-generatedconstructorstub
}
publicArrayList<Member>getAll(){
Membermember;
Stringsql1="select*from(selectrow_number()over(orderbypmcode)asrowNum,*"+
"from[CMD].[dbo].[my1])astwhererowNumbetween"+start+"and"+end;
try{
System.out.println("正在获取数据...");
allmembers=newArrayList();
rss=stas.executeQuery(sql1);
while(rss.next()){
member=newMember();
member.setAddress1(rss.getString("address1"));
member.setBnpoints(rss.getString("bnpoints"));
member.setDbno(rss.getString("dbno"));
member.setExpiry(rss.getString("expiry"));
member.setHispoints(rss.getString("hispoints"));
member.setKypoints(rss.getString("kypoints"));
member.setLevels(rss.getString("levels"));
member.setNames(rss.getString("names"));
member.setPmcode(rss.getString("pmcode"));
member.setRemark(rss.getString("remark"));
member.setSex(rss.getString("sex"));
member.setTelephone(rss.getString("telephone"));
member.setWxno(rss.getString("wxno"));
member.setPmdate(rss.getString("pmdate"));
allmembers.add(member);
//System.out.println(member.getNames());
}
System.out.println("成功获取sqlserver数据库数据!");
returnallmembers;
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
System.out.println("获取sqlserver数据库数据发送异常!");
e.printStackTrace();
}
try{
rss.close();
stas.close();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
returnnull;
}
publicvoidinputAll(ArrayList<Member>allmembers){
System.out.println("开始向mysql中写入");
Stringsql2="insertintotest.my2values(?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
try{
ps=con.prepareStatement(sql2);
System.out.println("-------------------------等待写入数据条数:"+allmembers.size());
for(inti=0;i<allmembers.size();i++){
ps.setString(1,allmembers.get(i).getPmcode());
ps.setString(2,allmembers.get(i).getNames());
//System.out.println(allmembers.get(i).getNames());
ps.setString(3,allmembers.get(i).getSex());
ps.setString(4,allmembers.get(i).getTelephone());
ps.setString(5,allmembers.get(i).getAddress1());
ps.setString(6,allmembers.get(i).getPmdate());
ps.setString(7,allmembers.get(i).getExpiry());
ps.setString(8,allmembers.get(i).getLevels());
ps.setString(9,allmembers.get(i).getDbno());
ps.setString(10,allmembers.get(i).getHispoints());
ps.setString(11,allmembers.get(i).getBnpoints());
ps.setString(12,allmembers.get(i).getKypoints());
ps.setString(13,allmembers.get(i).getWxno());
ps.setString(14,allmembers.get(i).getRemark());
//插入命令列表
//ps.addBatch();
ps.executeUpdate();
}
//ps.executeBatch();
con.commit();
ps.close();
con.close();
this.flag=false;
System.out.println(Thread.currentThread().getName()+"--->OK");
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
System.out.println("向mysql中更新数据时发生异常!");
e.printStackTrace();
}
}
@Override
publicvoidrun(){
//TODOAuto-generatedmethodstub
while(true&&flag){
this.inputAll(getAll());
}
}
㈣ java怎么操作数据库呢
jdbc连接数据库,DriverManger等初始化连接,prepareStatement语句执行sql,ResultSet拿到执行结果,while result.hasNext循环拿到数据值等。
如果不用jdbc,可以用框架,hibernate,mybatis都是可以的。
详情可以私聊我,手机打字太累了。
㈤ Java中对数据库操作实例
Hibernate映射完之后自己带了增删改,还有基本的查询,还可以使用hql语句查询。jsp页面想要连接数据库就是使用jdbc或者是jndi连接池~~还有odbc·不过一般都不会使用。其中对数据库的操作,只要使用对应数据库的操作语句即可!
㈥ java操作数据库
createStatement 这个不是报错,只是这句可能会抛出异常,这种情况在java中是必须使用 try catch 捕捉的。 你只要把代码块用 try catch 包起来就可以了。
㈦ 在Java中如何对数据库中的数据进行操作
package com.;import java.sql.*;import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;public class BaseDao {
/**
* 创建数据库连接及关闭
*/
// 打开连接
public static Connection getConnection() {
Connection con = null; /*************************** oracl 的连接 ***************************************/
// try { // Class.forName("oracle.jdbc.driver.OracleDriver");
// con = DriverManager.getConnection(
// "jdbc:oracle:thin:@127.0.0.1:1521:orcl", "bbs", "sa");
// } catch (ClassNotFoundException e) {
// e.printStackTrace();
// } catch (SQLException e) {
// e.printStackTrace();
// }
/******************************* sqlerver 的连接 ******************************/
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(
"jdbc:sqlserver://127.0.0.1:1433;databasename=bbs", "sa",
"zhou");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
/*********************************************************************/
return con;
} // 关闭
public static void closeAll(Connection connection,
PreparedStatement pStatement, ResultSet res) {
try {
if (connection != null && (!connection.isClosed())) {
connection.close();
}
if (res != null) {
res.close();
res = null;
}
if (pStatement != null) {
pStatement.close();
pStatement = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
对数据库增删改查package com.;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;import com.entity.News;public class NewsDao {
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
/**
* 添加新闻
* @param news
* @return
*/
public boolean newsAdd(News news){
boolean result=false;
String sql="insert into news values(?,?)";
con=BaseDao.getConnection();
try {
pstmt=con.prepareStatement(sql);
pstmt.setString(1, news.getContent());
pstmt.setString(2, FormatTime.newTime());
int i = 0;
i = pstmt.executeUpdate();
if (i > 0)
result = true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/**
* 修改新闻
* @param news
* @return
*/
public boolean updateNews(News news){
boolean result=false;
con=BaseDao.getConnection();
try {
pstmt=con.prepareStatement("update news set content=? ,writedate=? where newsid=?");
pstmt.setString(1, news.getContent());
pstmt.setString(2, FormatTime.newTime());
pstmt.setInt(3, news.getNewsID());
int i = 0;
i = pstmt.executeUpdate();
if (i > 0)
result = true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/**
* 删除新闻
* @param news
* @return
*/
public boolean deleteNews(News news){
boolean result=false;
String sql=String.format("delete from news where newsid=%d", news.getNewsID());
con=BaseDao.getConnection();
try {
pstmt=con.prepareStatement(sql);
int i = 0;
i = pstmt.executeUpdate();
if (i > 0)
result = true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/**
* 删除新闻 重载
* @param newsId
* @return
*/
public boolean deleteNews(int newsId){
boolean result=false;
String sql=String.format("delete from news where newsid=%d", newsId);
con=BaseDao.getConnection();
try {
pstmt=con.prepareStatement(sql);
int i = 0;
i = pstmt.executeUpdate();
if (i > 0)
result = true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/**
* 查询所有的新闻
* @return
*/
public List<News> selectAllNews(){
List<News> list=new ArrayList<News>();
String sql="select * from Users";
con=BaseDao.getConnection();
try {
pstmt=con.prepareStatement(sql);
rs=pstmt.executeQuery();
while(rs.next()){
News news=new News();
news.setNewsID(rs.getInt(1));
news.setContent(rs.getString(2));
news.setWriteDate(rs.getString(3));
list.add(news);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
BaseDao.closeAll(rs, pstmt, con);
}
return list;
}
/**
* 查询单个
* @return
*/
public News selectOneNews(){
News news=new News();
con=BaseDao.getConnection();
try {
pstmt=con.prepareStatement("select top 1 * from news order by newsid desc");
rs=pstmt.executeQuery();
while(rs.next()){
news.setNewsID(rs.getInt(1));
news.setContent(rs.getString(2));
news.setWriteDate(rs.getString(3));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
BaseDao.closeAll(rs, pstmt, con);
}
return news;
}
}
实体类package com.entity;import java.io.Serializable;
public class News implements Serializable{
private int newsID;
private String content;
private String writeDate; public News() {
super();
// TODO Auto-generated constructor stub
} public News(String content, String writeDate) {
super();
this.content = content;
this.writeDate = writeDate;
} public News(int newsID, String content, String writeDate) {
super();
this.newsID = newsID;
this.content = content;
this.writeDate = writeDate;
} public int getNewsID() {
return newsID;
} public void setNewsID(int newsID) {
this.newsID = newsID;
} public String getContent() {
return content;
} public void setContent(String content) {
this.content = content;
} public String getWriteDate() {
return writeDate;
} public void setWriteDate(String writeDate) {
this.writeDate = writeDate;
}
}
㈧ java中使用JDBC完成数据库操作的基本步骤是什么
创建一个以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=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为
gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。
3、创建数据库的连接
•要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,
该对象就代表一个数据库的连接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和
密码来获得。
例如:
//连接MySql数据库,用户名和密码都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("数据库连接失败!");
se.printStackTrace() ;
}
4、创建一个Statement
•要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3
种类型:
1、执行静态SQL语句。通常通过Statement实例实现。
2、执行动态SQL语句。通常通过PreparedStatement实例实现。
3、执行数据库存储过程。通常通过CallableStatement实例实现。
具体的实现方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt =
con.prepareCall("{CALL demoSp(? , ?)}") ;
5、执行SQL语句
Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate
和execute
1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句
,返回一个结果集(ResultSet)对象。
2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或
DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的
语句。
具体实现的代码:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
int rows = stmt.executeUpdate("INSERT INTO ...") ;
boolean flag = stmt.execute(String sql) ;
6、处理结果
两种情况:
1、执行更新返回的是本次操作影响到的记录数。
2、执行查询返回的结果是一个ResultSet对象。
• ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些
行中数据的访问。
• 使用结果集(ResultSet)对象的访问方法获取数据:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1) ; // 此方法比较高效
}
(列是从左到右编号的,并且从列1开始)
7、关闭JDBC对象
操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声
明顺序相反:
1、关闭记录集
2、关闭声明
3、关闭连接对象
if(rs != null){ // 关闭记录集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(stmt != null){ // 关闭声明
try{
stmt.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(conn != null){ // 关闭连接对象
try{
conn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
㈨ 在Java中如何对数据库中的数据进行操作
//此类为连接数据库并进行数据库的操作x0dx0aimportjava.sql.Connection;x0dx0aimportjava.sql.DriverManager;x0dx0aimportjava.sql.ResultSet;x0dx0aimportjava.sql.SQLException;x0dx0aimportjava.sql.Statement;x0dx0apublicclassConn{x0d=null;=null;=null;x0dx0a//建立数据库的连接x0dx0apublicConn(){x0dx0aStringurl="jdbc:sqlserver://localhost:1433;databaseName=ZYGX";x0dx0aStringuser="sa";x0dx0aStringpassword="123";x0dx0atry{x0dx0aClass.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");x0dx0aconn=DriverManager.getConnection(url,user,password);x0dx0ast=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);x0dx0a}catch(ClassNotFoundExceptione){x0dx0ae.printStackTrace();x0dx0a}catch(SQLExceptione){x0dx0ae.printStackTrace();x0dx0a}x0dx0a}x0dx0ax0dx0a//通过不同的sql语句,得到相应Resultset结果集x0dx0apublicResultSetgetRs(Stringsql){x0dx0atry{x0dx0ars=st.executeQuery(sql);x0dx0a}catch(SQLExceptione){x0dx0ae.printStackTrace();x0dx0a}x0dx0areturnrs;x0dx0a}x0dx0a//根据不同的sql语句,执行数据库的更新操作x0dx0apublicintupdata(Stringsql){x0dx0aintnum=0;x0dx0atry{x0dx0anum=st.executeUpdate(sql);x0dx0a}catch(SQLExceptione){x0dx0ae.printStackTrace();x0dx0a}x0dx0areturnnum;x0dx0a}x0dx0a//关闭数据库连接相应的资源x0dx0apublicvoidclose(){x0dx0atry{x0dx0aif(rs!=null){x0dx0ars.close();x0dx0ars=null;x0dx0a}x0dx0aif(st!=null){x0dx0ast.close();x0dx0ast=null;x0dx0a}x0dx0aif(conn!=null){x0dx0aconn.close();x0dx0aconn=null;x0dx0a}x0dx0a}catch(SQLExceptione){x0dx0ae.printStackTrace();x0dx0a}x0dx0a}x0dx0a}x0dx0a----------------------------------------------------------------------x0dx0a//可以对button里添加动作按钮:x0dx0afinalJButtonbutton=newJButton();x0dx0abutton.addActionListener(newActionListener(){(finalActionEvente){x0dx0aConnconn=newConn();x0dx0aStringsql1="select*fromaawherename='"+name+"'";//按name值查找x0dx0aResultSetrs=conn.getRs(sql1);x0dx0atry{x0dx0awhile(rs.next()){x0dx0aintn=rs.getString("type");x0dx0a}x0dx0a}catch(SQLExceptione){x0dx0ae.printStackTrace();x0dx0a}x0dx0aStringname=textField.getText();x0dx0aStringsql="updateaasettittle='"+name+"'";//从aa表将title字段的值改成textField里的name值x0dx0aStringsql2="deletefromaawherename='"+name+"'";//从aa表将按取得name的值删除该行数据x0dx0aStringsql3="insertintoaa(name,uname)values('"+name+"','"')";//将name,uname值新增到aa表x0dx0aif(conn.update(sql)==1){x0dx0aSystem.out.print("修改成功");x0dx0a}x0dx0aif(conn.update(sql2)==1){x0dx0aSystem.out.print("删除成功");x0dx0a}x0dx0aif(conn.update(sql3)==1){x0dx0aSystem.out.print("新增成功");x0dx0a}x0dx0a}x0dx0a});
㈩ java中使用JDBC完成数据库操作的基本步骤是什么
创建一个以JDBC连接数据库的程序,包含7个步骤: x0dx0a 1、加载JDBC驱动程序: x0dx0a 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), x0dx0a 这通过java.lang.Class类的静态方法forName(String className)实现。 x0dx0a 例如: x0dx0a try{ x0dx0a //加载MySql的驱动类 x0dx0a Class.forName("com.mysql.jdbc.Driver") ; x0dx0a }catch(ClassNotFoundException e){ x0dx0a System.out.println("找不到驱动程序类 ,加载驱动失败!"); x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a 成功加载后,会将Driver类的实例注册到DriverManager类中。 x0dx0a 2、提供JDBC连接的URL x0dx0a •连接URL定义了连接数据库时的协议、子协议、数据源标识。 x0dx0a •书写形式:协议:子协议:数据源标识 x0dx0a 协议:在JDBC中总是以jdbc开始 x0dx0a 子协议:是桥连接的驱动程序或是数据库管理系统名称。 x0dx0a 数据源标识:标记找到数据库来源的地址与连接端口。 x0dx0a 例如:(MySql的连接URL) x0dx0a jdbc:mysql: x0dx0a //localhost:3306/test?useUnicode=true&characterEncoding=gbk ; x0dx0a useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为 x0dx0a gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。 x0dx0a 3、创建数据库的连接 x0dx0a •要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象, x0dx0a 该对象就代表一个数据库的连接。 x0dx0a •使用DriverManager的getConnectin(String url , String username , x0dx0a String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和 x0dx0a 密码来获得。 x0dx0a 例如: x0dx0a //连接MySql数据库,用户名和密码都是root x0dx0a String url = "jdbc:mysql://localhost:3306/test" ; x0dx0a String username = "root" ; x0dx0a String password = "root" ; x0dx0a try{ x0dx0a Connection con = x0dx0a DriverManager.getConnection(url , username , password ) ; x0dx0a }catch(SQLException se){ x0dx0a System.out.println("数据库连接失败!"); x0dx0a se.printStackTrace() ; x0dx0a } x0dx0a 4、创建一个Statement x0dx0a •要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3 x0dx0a 种类型: x0dx0a 1、执行静态SQL语句。通常通过Statement实例实现。 x0dx0a 2、执行动态SQL语句。通常通过PreparedStatement实例实现。 x0dx0a 3、执行数据库存储过程。通常通过CallableStatement实例实现。 x0dx0a 具体的实现方式: x0dx0a Statement stmt = con.createStatement() ; x0dx0a PreparedStatement pstmt = con.prepareStatement(sql) ; x0dx0a CallableStatement cstmt = x0dx0a con.prepareCall("{CALL demoSp(? , ?)}") ; x0dx0a 5、执行SQL语句 x0dx0a Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate x0dx0a 和execute x0dx0a 1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句 x0dx0a ,返回一个结果集(ResultSet)对象。 x0dx0a 2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或 x0dx0a DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等 x0dx0a 3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的 x0dx0a 语句。 x0dx0a 具体实现的代码: x0dx0a ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ; x0dx0a int rows = stmt.executeUpdate("INSERT INTO ...") ; x0dx0a boolean flag = stmt.execute(String sql) ; x0dx0a 6、处理结果 x0dx0a 两种情况: x0dx0a 1、执行更新返回的是本次操作影响到的记录数。 x0dx0a 2、执行查询返回的结果是一个ResultSet对象。 x0dx0a • ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 x0dx0a 行中数据的访问。 x0dx0a • 使用结果集(ResultSet)对象的访问方法获取数据: x0dx0a while(rs.next()){ x0dx0a String name = rs.getString("name") ; x0dx0a String pass = rs.getString(1) ; // 此方法比较高效 x0dx0a } x0dx0a (列是从左到右编号的,并且从列1开始) x0dx0a 7、关闭JDBC对象 x0dx0a 操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声 x0dx0a 明顺序相反: x0dx0a 1、关闭记录集 x0dx0a 2、关闭声明 x0dx0a 3、关闭连接对象 x0dx0a if(rs != null){ // 关闭记录集 x0dx0a try{ x0dx0a rs.close() ; x0dx0a }catch(SQLException e){ x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a } x0dx0a if(stmt != null){ // 关闭声明 x0dx0a try{ x0dx0a stmt.close() ; x0dx0a }catch(SQLException e){ x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a } x0dx0a if(conn != null){ // 关闭连接对象 x0dx0a try{ x0dx0a conn.close() ; x0dx0a }catch(SQLException e){ x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a }
