您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > JDBC编程实验报告
《JAVA高级应用》课程实验实验二JDBC编程姓名:沈万琴学号:20095500班级:电子商务09-2班学校:合肥工业大学2011年11月26日一、实验目的通过Java数据库访问程序的编写、调试,掌握JDBC编程的基本方法,熟悉并熟练运用常用的JDBCAPI,促加深对概念的理解,进一步加强动手能力。二、实验内容(1)复习数据库SQL语句的编写。(2)编写Java数据库(使用ODBC-JDBC驱动)公共模块。(3)建立数据库应用模型,对数据库进行查询、更新、修改、删除操作。(4)调试程序,实现数据库的访问。三、实验代码程序结果①实现对数据库的查询代码如下importjava.awt.*;importjava.sql.*;classaa{publicstaticvoidmain(String[]args){Stringurl=jdbc:odbc:bobo;//打开通过JDBC-ODBC桥来访问bobo数据库Stringa=SELECT*FROMstudents;//设定查询字符串try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);//加载驱动程序}catch(Exceptione)//捕获加载驱动程序可能出现异常{System.out.print(连接数据库出错!);}//输出数据库中信息try{Connectionb=DriverManager.getConnection(url);//建立连接Statementc=b.createStatement();ResultSetr=c.executeQuery(a);//执行查询System.out.println(数据库连接成功,表中内容为:\n);System.out.println(学号++姓名++课程++学分++分数);while(r.next())//循环输出数据库中students表中的数据{Longi1=r.getLong(学号);Stringi2=r.getString(姓名);Stringi3=r.getString(课程);Doublei4=r.getDouble(学分);inti5=r.getInt(分数);System.out.println(i1++i2++i3++i4++i5);}//关闭所有打开的资源r.close();c.close();b.close();}catch(SQLExceptione){System.out.print(连接数据库出错,错误原因可能有:\n);e.printStackTrace();}}}运行程序,输出数据库中数据,运行结果如下图:②在students表中修改一条记录代码如下importjava.awt.*;importjava.sql.*;classaa{publicstaticvoidmain(String[]args){Stringurl=jdbc:odbc:bobo;//打开通过JDBC-ODBC桥来访问bobo数据库Stringa=SELECT*FROMstudents1;//设定查询字符串try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);//加载驱动程序}catch(Exceptione)//捕获加载驱动程序可能出现异常{System.out.print(连接数据库出错!);}//修改一条记录try{Connectionb=DriverManager.getConnection(url);tatementc=b.createStatement();c.executeUpdate(UPDATEstudengts1SET课程=物理,学分=4WHERE学号=01);ResultSetr=c.executeQuery(a);System.out.println(数据库连接成功,表中内容为:\n);System.out.println(学号:++姓名++课程++学分++分数);while(r.next()){Longi1=r.getLong(学号);Stringi2=r.getString(姓名);Stringi3=r.getString(课程);Doublei4=r.getDouble(学分);inti5=r.getInt(分数);System.out.println(i1++i2++i3++i4++i5);}r.close();c.close();b.close();}catch(SQLExceptione){e.printStackTrace();}}}运行程序,输出数据库中进行修改后的数据,运行结果如下图:③在students表中删除一条记录代码如下:importjava.awt.*;importjava.sql.*;classaa{publicstaticvoidmain(String[]args){Stringurl=jdbc:odbc:bobo;//打开通过JDBC-ODBC桥来访问bobo数据库Stringa=SELECT*FROMstudents1;//设定查询字符串try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);//加载驱动程序}catch(Exceptione)//捕获加载驱动程序可能出现异常{System.out.print(连接数据库出错!);}//删除一条记录try{Connectionb=DriverManager.getConnection(url);Statementc=b.createStatement();c.executeUpdate(DELETEFROMstudents1WHERE学号=02);ResultSetr=c.executeQuery(a);while(r.next()){Longi1=r.getLong(学号);Stringi2=r.getString(姓名);Stringi3=r.getString(课程);Doublei4=r.getDouble(学分);inti5=r.getInt(分数);System.out.println(i1++i2++i3++i4++i5);}r.close();c.close();b.close();}catch(SQLExceptione){e.printStackTrace();}}}运行程序,输出数据库中进行删除操作后数据,运行结果如下图:④在students表中插入一条记录代码如下:importjava.awt.*;importjava.sql.*;classaa{publicstaticvoidmain(String[]args){Stringurl=jdbc:odbc:bobo;//打开通过JDBC-ODBC桥来访问bobo数据库Stringa=SELECT*FROMstudents1;//设定查询字符串try{Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);//加载驱动程序}catch(Exceptione)//捕获加载驱动程序可能出现异常{System.out.print(连接数据库出错!);}//添加一条记录try{Connectionb=DriverManager.getConnection(url);Statementc=b.createStatement();c.executeUpdate(INSERTINTObook1(学号,姓名,课程,学分,分数)VALUES(06,'陈博','思修',2,85));ResultSetr=c.executeQuery(a);System.out.println(学号:++姓名++课程++学分++分数);while(r.next()){Longi1=r.getLong(学号);Stringi2=r.getString(姓名);Stringi3=r.getString(课程);Doublei4=r.getDouble(学分);inti5=r.getInt(分数);System.out.println(i1++i2++i3++i4++i5);}r.close();c.close();b.close();}catch(SQLExceptione){e.printStackTrace();}}}运行程序,输出数据库进行插入后的数据,运行结果如下图:四、验过程中遇到的问题及解决方法①程序开始之前不知道如何建立ODBC数据源,在这一环浪费了很多时间,后来知要在Windows系统控制面板中,选择“数据源(ODBC)”,在系统DSN中,选择“添加”,然后,建立一个名为bobo的数据源,并且设置数据源为需要使用的SQLServer,即这里假设为本地SQLServer数据源,如果数据源不在本地,则要修改。最后单击“完成”按钮,建立ODBC数据源。2②在执行创建RssultSet类对象r时,把代码写成了:ResultSetr=c.executeQuery();编译程序,出现了下面的错误:无法将java.sql.Statemeng中的.executeQuery(java.lang.string)应用到1.java。看课件知:先没有预编译,所以一定有一个参数给.executeQuery()方法来返回一个结果集。所以正确的代码为:ResultSetr=c.executeQuery(a)。③编程过程中,SQL语句编写经常出现错误,里面有很多需要注意的地方。五、实验心得1、巩固了以前基础的java知识。2、初步熟悉并掌握了访问数据库的步骤和基本方法。3、掌握如何建立ODBC数据源。4、基本掌握了SQL语句的基本方法;也会用java语句实现对数据库的连接和运用;在今后的学习中要更深入的掌握java数据库方法。5、进一步理解异常处理在java编程中的作用,掌握try-catch-finally的结构,复习异常处理的作用。
本文标题:JDBC编程实验报告
链接地址:https://www.777doc.com/doc-6576194 .html