Java程序设计项目化教程-9.4 操作数据库_第1页
Java程序设计项目化教程-9.4 操作数据库_第2页
Java程序设计项目化教程-9.4 操作数据库_第3页
Java程序设计项目化教程-9.4 操作数据库_第4页
Java程序设计项目化教程-9.4 操作数据库_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PART9.4.1添加数据9.4.1添加数据1.执行静态INSERT语句添加记录利用Statement实例通过执行静态INSERT语句添加记录的典型代码如下:Stringsql="INSERTINTOteacher_tbl(teacher_id,teacher_name,department)VALUES(3601101,'王*','机电工程学院')"; //定义SQL语句Statementst=conn.createStatement(); //生成Statement类的对象st.executeUpdate(sql); //利用st对象来执行插入语句9.4.1添加数据例9-5利用Statement实例向teacher_tbl表中通过执行静态INSERT语句添加记录。publicclassexample9_5{ publicstaticvoidmain(String[]args){ try{ Connectionconn=DriverManager.getConnection(url,username,password);

sql="INSERTINTOteacher_tbl(teacher_id,teacher_name," +"department)VALUES(3601101,'王*','机电工程学院')";

9.4.1添加数据

//定义SQL语句 Statementst=conn.createStatement(); //生成Statement类的对象 t.executeUpdate(sql); //利用st对象来执行插入语句 st.close(); //关闭Statement对象 conn.close(); //关闭Connection对象 }catch(SQLExceptione){ System.out.println("数据库连接失败!"); e.printStackTrace(); } }}运行结果:在数据表中插入一条“teacher_id=3601101”,“teacher_name=王*”,“department=机电工程学院”的记录。9.4.1添加数据2.执行动态INSERT语句添加记录利用PreparedStatement实例通过执行动态INSERT语句添加记录的典型代码如下:sql="INSERTINTOteacher_tbl(teacher_id,teacher_name,department)VALUES(?,?,?)";PreparedStatementprpdSt=conn.prepareStatement(sql);prpdSt.setInt(1,3601102); //为整型参数赋值prpdSt.setString(2,"张*"); //为字符串型参数赋值prpdSt.setString(3,"机电工程学院"); //为字符串型参数赋值prpdSt.executeUpdate(); //执行INSERT语句9.4.1添加数据例9-6利用Statement实例向teacher_tbl表中通过执行动态INSERT语句添加记录。public

classexample9_6{

try{ Connectionconn=DriverManager.getConnection(url,username,password);

sql="INSERTINTOteacher_tbl(teacher_id,teacher_name,department)VALUES(?,?,?)"; //定义SQL语句 PreparedStatementprpdSt=conn.prepareStatement(sql);9.4.1添加数据 prpdSt.setInt(1,3601102);//为参数赋值 prpdSt.setString(2,"张*");//为参数赋值 prpdSt.setString(3,"机电工程学院");//为参数赋值 prpdSt.executeUpdate(); //执行INSERT语句 prpdSt.close(); //关闭PreparedStatement对象 conn.close(); //关闭Connection对象 }

catch(SQLExceptione){ System.out.println("数据库连接失败!"); e.printStackTrace(); }9.4.1添加数据运行结果:在数据表中插入一条“teacher_id=3601102”,“teacher_name=张*”,“department=机电工程学院”的记录。9.4.1添加数据在为动态SQL语句中的参数赋值时,参数的索引值从1开始,而不是从0;并且要为动态SQL语句中的每一个参数赋值,否则在提交时将抛出“错误的参数绑定”异常。9.4.1添加数据通过PreparedStatement实例添加完记录时,在设置完参数数值后,也需要调用executeUpdate()方法,这时才真正执行INSERT语句向数据库添加记录。PART9.4.2查询数据9.4.2查询数据在查询数据时,既可以利用Statement实例通过执行静态SELECT语句完成,也可以利用PreparedStatement实例通过执行动态SELECT语句完成,还可以利用CallableStatement实例通过执行存储过程完成。9.4.2查询数据1.执行静态SELECT语句查询数据利用Statement实例通过执行静态SELECT语句查询数据的典型代码如下:Stringsql="select*fromteacher_tbl"; //定义SQL语句Statementst=conn.createStatement(); //生成Statement类的对象ResultSetrs=st.executeQuery(sql); //利用st对象来执行查询语句9.4.2查询数据例9-7查询teacher_tbl表中所有记录。关键代码如下:publicclassexample9_7{…/*此处省略了静态变量url、username和password,以及加载数据库驱动的代码,参考例9-4*/publicstaticvoidmain(String[]args){try{ Connectionconn=DriverManager.getConnection(url,username,password); sql="select*fromteacher_tbl"; //定义SQL语句

Statementst=conn.createStatement();//生成Statement类的对象

ResultSetrs=st.executeQuery(sql); //利用st对象来执行查询语句 ResultSetMetaDatarsmd=rs.getMetaData(); //利用rs对象生成ResultSetMetaData对象 System.out.println("总列数:"+rsmd.getColumnCount());//打印列数 while(rs.next()){ //循环输出所有查询到的记录 System.out.println("教工号:"+rs.getString("teacher_id")+"姓名:"+rs.getString("teacher_name")+"部门:"+rs.getString("department"));//利用rs获取教工号、姓名和部门 }

9.4.2查询数据rs.close(); //关闭ResultSet对象

st.close(); //关闭Statement对象

conn.close(); //关闭Connection对象

}catch(SQLExceptione){ System.out.println("数据库连接失败!"); e.printStackTrace(); }}}。9.4.2查询数据9.4.2查询数据2.执行动态SELECT语句查询数据利用PreparedStatement实例通过执行动态SELECT语句查询数据的典型代码如下:Stringsql="select*fromteacher_tblwhereteacher_id=?";PreparedStatement

prpdSt=connection.prepareStatement(sql);prpdSt.setString(1,"3601101");ResultSet

rs=prpdSt.executeQuery();9.4.2查询数据例9-8查询teacher_tbl表中字段"teacher_id=3601101"的记录。关键代码如下:publicclassexample9_8{…/*此处省略了静态变量url、username和password,以及加载数据库驱动的代码,参考例9-4*/ publicstaticvoidmain(String[]args){try{ Connectionconn=DriverManager.getConnection(url,username,password); Stringsql="select*fromteacher_tblwhereteacher_id=?"; PreparedStatementprpdStmt=conn.prepareStatement(sql); //生成PreparedStatement类对象9.4.2查询数据prpdStmt.setString(1,"3601101"); ResultSetrs=prpdStmt.executeQuery();//生成ResultSet类的对象

while(rs.next()){ //循环输出所有查询到的记录

System.out.println("教工号:"+rs.getString("teacher_id")+"姓名:"+rs.getString("teacher_name")+"部门:"+rs.getString("department")); //利用rs获取教工号、姓名和部门

} rs.close(); //关闭ResultSet对象

prpdStmt.close();//关闭PreparedStatement类对象

conn.close(); //关闭Connection对象}9.4.2查询数据catch(SQLExceptione){ System.out.println("数据库连接失败!"); e.printStackTrace(); }}}执行结果如下图所示:PART9.4.3修改数据在修改数据时,即可以利用Statement实例通过执行静态UPDATE语句完成,也可以利用PreparedStatement实例通过执行动态UPDATE语句完成,还可以利用CallableStatement实例通过执行存储过程完成。9.4.3修改数据1.执行静态UPDATE语句修改数据利用Statement实例通过执行静态UPDATE语句修改数据的典型代码如下:Stringsql="updateteacher_tblsetteacher_name='李*'whereteacher_id=3601105";Statementst=conn.createStatement(); //生成Statement类的对象st.executeUpdate(sql);9.4.3修改数据2.执行动态UPDATE语句修改数据利用PreparedStatement实例通过执行动态UPDATE语句修改数据的典型代码如下:Stringsql="updateteacher_tblsetteacher_name=?whereteacher_id=?";PreparedStatementprpdSt=conn.prepareStatement(sql);//生成PreparedStatement类的对象prpdSt.setString(1,"李*");prpdSt.setInt(2,3601105);prpdSt.executeUpdate();9.4.3修改数据例9-9通过执行PreparedStatement实例修改teacher_tbl表中“teacher_id=3601105”的记录,设置“teacher_name=李*”。publicclassexample9_9{…/*此处省略了静态变量url、username和password,以及加载数据库驱动的代码,参考例9-4*/publicstaticvoidmain(String[]args){try{ Connectionconn=DriverManager.getConnection(url,username,password);/*利用Statement实例通过执行静态UPDATE语句修改数据

Stringsql="updateteacher_tblsetteacher_name='李四'whereteacher_id=3601105";9.4.3修改数据Statementst=conn.createStatement();//生成Statement类的对象

st.executeUpdate(sql); st.close(); //关闭Statement对象

conn.close(); //关闭Connection对象 */ //利用PreparedStatement实例通过执行动态UPDATE语句修改数据

Stringsql="updateteacher_tblsetteacher_name=?whereteacher_id=?";

9.4.3修改数据PreparedStatementprpdSt=conn.prepareStatement(sql); //生成PreparedStatement类的对象

prpdSt.setString(1,"李*"); prpdSt.setInt(2,3601105); prpdSt.executeUpdate(); prpdSt.close(); //关闭PreparedStatement类对象

conn.close(); //关闭Connection对象

}9.4.3修改数据catch(SQLExceptione){ System.out.println("数据库连接失败!"); e.printStackTrace(); }}}程序执行后,teacher_tbl表中更新的记录如下图所示。9.4.3修改数据PART9.4.4删除数据1.执行静态DELETE语句删除数据利用Statement实例通过执行静态DELETE语句删除数据的典型代码如下:Stringsql="deletefromteacher_tblwhereteacher_id=3601105";Statementst=conn.createStatement(); //生成Statement类的对象st.executeUpdate(sql);9.4.4删除数据2.执行动态DELETE语句删除数据利用PreparedStatement实例通过执行动态DELETE语句删除数据的典型代码如下:Stringsql="deletefromteacher_tblwhereteacher_id=?";PreparedStatementprpdSt=conn.prepareStatement(sql);//生成PreparedStatement类的对象prpdSt.setInt(1,3601105); prpdSt.executeUpdate();9.4.4删除数据例9-9通过执行PreparedStatement实例修改teacher_tbl表中“teacher_id=3601105”的记录publicclassexample9_10{…/*此处省略了静态变量url、username和password,以及加载数据库驱动的代码,参考例9-4*/publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub try{ Connectionconn=DriverManager.getConnect

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论