JAVA实习报告_9.docx_第1页
JAVA实习报告_9.docx_第2页
JAVA实习报告_9.docx_第3页
JAVA实习报告_9.docx_第4页
JAVA实习报告_9.docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

实验九 通过JDBC方式操作数据库1实验目的(1)掌握通过JDBC方式操作数据库的基本步骤。(2)掌握增、删、改记录的方法。(3)掌握查询记录以及遍历查询结果的方法。2实验内容实验题1 学生信息管理函数。数据库中的信息参考Exp9.1.txt,这些命令用来创建student表,包含学生的学号、姓名、年龄信息。 根据学号,可以查询到学生的姓名和年龄; 给定学生的学号、姓名、年龄,在表中追加一行信息; 给定学生的学号,可以从表中删除该学生的信息;基本要求 对上面的每一个功能编写相应的函数,并测试。具体实现代码如下:import java.sql.*;import javax.swing.JOptionPane;public class test1 implements DataBase statictryClass.forName(Driver);System.out.println(数据库连接成功); catch(ClassNotFoundException e)e.printStackTrace();System.out.println(建立数据库发生错误!); public void add(String S1,String S2,int S3 )tryConnection conn=DriverManager.getConnection(URL, USERNAME, PASSWORD);String SQL=insert into student(stu_num,stu_name,Stu_age) values(?,?,?);PreparedStatement PS= (PreparedStatement) conn.prepareStatement(SQL);PS.setString(1,S1);PS.setString(2,S2);PS.setInt(3,S3);PS.executeUpdate();PS.close();conn.close();JOptionPane.showMessageDialog(null, 提示n+n+添加成功);catch(SQLException e)JOptionPane.showMessageDialog(null, 提示n+n+插入失败!);public void change(String S1,int S2,String S3)tryConnection conn= DriverManager.getConnection(URL, USERNAME, PASSWORD);String SQL1=update student set Stu_name=? where Stu_num=?;PreparedStatement PS1= conn.prepareStatement(SQL1);PS1.setString(1,S1);PS1.setString(2,S3);PS1.executeUpdate();PS1.close();String SQL2=update student set Stu_age=? where Stu_num=?;PreparedStatement PS2= (PreparedStatement) conn.prepareStatement(SQL2);PS2.setInt(1, S2);PS2.setString(2,S3);PS2.executeUpdate();PS2.close();conn.close();JOptionPane.showMessageDialog(null, 提示n+n+修改成功);catch(SQLException e)JOptionPane.showMessageDialog(null, 提示n+n+更新失败!);public void delete(String S)tryConnection conn=DriverManager.getConnection(URL, USERNAME, PASSWORD);String SQL1=delete from student where Stu_num=?;PreparedStatement PS1= conn.prepareStatement(SQL1);PS1.setString(1,S);PS1.executeUpdate();PS1.close();conn.close();JOptionPane.showMessageDialog(null, 提示n+n+删除成功);catch(SQLException e)JOptionPane.showMessageDialog(null, 提示n+n+删除失败);public void find()tryConnection conn=DriverManager.getConnection(URL,USERNAME,PASSWORD);String SQL=Select * from student ;Statement ST= conn.createStatement();ResultSet RS=ST.executeQuery(SQL);while(RS.next()String S1=RS.getString(1);String S2=RS.getString(2);String S3=RS.getString(3);conn.close();catch(SQLException e)e.printStackTrace();void main()tryConnection conn= DriverManager.getConnection(URL,USERNAME,PASSWORD);String SQL=Select * from admin ;Statement ST= conn.createStatement();ResultSet RS=ST.executeQuery(SQL);while(RS.next()String S1=RS.getString(1);String S2=RS.getString(2);String S3=RS.getString(3);System.out.println(S1+S2+S3);conn.close();catch(SQLException e)e.printStackTrace();实验题2学生信息管理系统。学号:姓名:年龄:查 询追 加删 除状态: 图3.15 学生信息管理系统界面 点击“追加”按钮,可以追加一个学生信息; 点击“查询”按钮和“删除”按钮,可以按照学号查询或者删除一个学生信息;技术提示 可以使用上一题开发的函数。程序运行如下:由于数据库出了点问题,卸载后安装不上,所以就不演示具体的操作了。实验题3 向student表连续插入5条记录,使用JDBC事务保证插入操作正确性,若若5条记录插入成功,则操作成功;否则回滚插入操作。具体实现代码如下:import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;import com.mysql.jdbc.Connection;public class test3 implements DataBase statictryClass.forName(Driver);System.out.println(数据库连接成功); catch(ClassNotFoundException e)e.printStackTrace();public static void main(String args) tryConnection conn= (Connection) DriverManager.getConnection(URL, USERNAME, PASSWORD);conn.setAutoCommit(false);PreparedStatement PS=conn.prepareStatement(insert into student(stu_num,stu_name,Stu_age) values(?,?,?) );PS.setString(1, 12345);PS.setString(2, 王正华);PS.setInt(3, 23);PS.addBatch();PS.setString(1, 12347);PS.setString(2, 王正华);PS.setInt(3, 23);PS.addBatch();PS.setString(1, 12348);PS.setString(2, 王正华);PS.setInt(3, 23);PS.addBatch();PS.setString(1, 12349);PS.setString(2, 王正华);PS.setInt(3, 23);PS.addBatch();PS.setString(1, 12350);PS.setString(2, 王正华);PS.setInt(3, 23);PS.addBatch();PS.executeBatch();mit();PS.close();conn.close();catch(SQLException e)e.printStackTrace();实验题4 给student表增加一pic字段,使之能存放图片,并通过程序存入图片和读取图片。具体源代码如下:import java.sql.*;import java.io.*;public class test4 implements DataBasepublic static void main(String args) throws SQLException, IOException Connection conn= null;PreparedStatement sql =null;ResultSet rs = null;File file ;FileInputStream fs = null;tryClass.forName(Driver);conn = DriverManager.getConnection(URL,USERNAME,PASSWORD);file = new File(img.jpg);if(file.exists()System.out.println(开始向数据库插入图片!);fs = new FileInputStream(file);sql = conn.prepareStatement(insert into test values(?,?,?,?);sql.setInt(1,55);sql.setString(2,file.getName();sql.setInt(3,22);sql.setBinaryStream(4, fs, fs.available();sql.execute();else if(!file.exists()System.out.println(没有文件);catch(Exception e)e.printStackTrace();finallysql.close();fs.close();trySystem.out.println(开始写文件);file = new File(imgOut.jpg);FileOutputStream fos = new FileOutputStream (file);InputStream is = null;byte bytes = new byte512000;sql = conn.prepareStatement(select img from test where id=?);sql.setInt(1, 55);rs = sql.executeQuery();rs.next();if(!file.exists()file.createNewFile(

温馨提示

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

最新文档

评论

0/150

提交评论