Java语言程序设计(java数据库连接)ppt.ppt

上传人:za****8 文档编号:7201355 上传时间:2020-03-15 格式:PPT 页数:35 大小:333.52KB
返回 下载 相关 举报
Java语言程序设计(java数据库连接)ppt.ppt_第1页
第1页 / 共35页
Java语言程序设计(java数据库连接)ppt.ppt_第2页
第2页 / 共35页
Java语言程序设计(java数据库连接)ppt.ppt_第3页
第3页 / 共35页
点击查看更多>>
资源描述
Java语言程序设计 清华大学出版社 第10章java数据库连接 图15 1学生数据库的组成及相关名词 10 1建立ODBC数据源 理解ODBC数据源 图15 3ODBC数据源管理器对话框 图15 7安装完成后的 ODBC数据源管理器 对话框 10 2使用JDBC连接数据库 JDBC JavaDataBaseConnectivity的缩写 意思是Java程序连接数据库的应用程序接口 API JDBC由一群类和接口组成 通过调用这些类和接口所提供的成员方法 我们可以连接各种不同的数据库 进而使用标准的SQL命令对数据库进行查询 插入 删除 更新等操作 10 2 1JDBC结构 JDBC的基本结构由Java程序 JDBC管理器 驱动程序和数据库四部分组成 如图所示 图JDBC结构 数据库 ODBC JDBC 桥接器 Java应用程序 1 Java应用程序Java应用程序根据JDBC方法实现对数据库的访问和操作 完成的主要任务有 请求与数据库建立连接 向数据库发送SQL请求 查询结果 处理错误 控制传输 提交及关闭连接等操作 2 JDBC编程要点 1 引用java sql包 importjava sql 2 使用Class forName 方法加载相应数据库的JDBC驱动程序 class forName sun jdbc odbc JdbcOdbcDriver 3 定义JDBC的URL对象 例如 StringconURL jdbc odbc TestDB 其中TestDB是我们设置的数据源 4 连接数据库 Connections DriverManager getConnection conURL 5 使用SQL语句对数据库进行操作 6 解除Java与数据库的连接并关闭数据库 例如 s close 10 3JDBC编程实例 10 3 1创建数据表 示例程序1 创建学生表student 此表有三个字段 学号 id 姓名 name 及成绩 score importjava sql 引入java sql包publicclassc1 publicstaticvoidmain String args StringJDriver sun jdbc odbc JdbcOdbcDriver 声明JDBC驱动程序对象StringconURL jdbc odbc TestDB 定义JDBC的URL对象try Class forName JDriver 加载JDBC ODBC桥驱动程序 catch java lang ClassNotFoundExceptione System out println ForName e getMessage try Connectioncon DriverManager getConnection conURL 连接数据库URLStatements con createStatement 建立Statement类对象Stringquery createtablestudent idchar 10 namechar 15 scoreinteger 创建一个含有三个字段的学生表students executeUpdate query 执行SQL命令 s close 释放Statement所连接的数据库及JDBC资源con close 关闭与数据库的连线 catch SQLExceptione System out println SQLException e getMessage 其中 createtablestudent idchar 10 namechar 15 scoreinteger 这个SQL语句表示建立一个名为student的表 包含id 字符型 宽度为10 name 字符型 宽度为15 与score 数字型 三个字段 这段程序的操作结果是创建了一个数据库中student表的结构 表中还没有任何记录 10 3 2向数据表中插入数据 示例程序2 在上例创建的数据表student中插入三个学生的记录 importjava sql publicclassc2 publicstaticvoidmain String args StringJDriver sun jdbc odbc JdbcOdbcDriver StringconURL jdbc odbc TestDB try Class forName JDriver catch java lang ClassNotFoundExceptione System out println ForName e getMessage try Connectioncon DriverManager getConnection conURL Statements con createStatement Stringr1 insertintostudentvalues 0001 王明 80 Stringr2 insertintostudentvalues 0002 高强 94 Stringr3 insertintostudentvalues 0003 李莉 82 使用SQL命令insert插入三条学生记录到表中s executeUpdate r1 s executeUpdate r2 s executeUpdate r3 s close con close catch SQLExceptione System out println SQLException e getMessage 图程序2的运行结果 10 3 3更新数据 示例程序3 java 修改上例数据表中的第二条和第三条记录的学生成绩字段值 并把修改后的数据表的内容输出到屏幕上 importjava sql publicclassc3 publicstaticvoidmain String args StringJDriver sun jdbc odbc JdbcOdbcDriver StringconURL jdbc odbc TestDB String id 0002 0003 int score 89 60 try Class forName JDriver catch java lang ClassNotFoundExceptione System out println ForName e getMessage try Connectioncon DriverManager getConnection conURL 修改数据库中数据表的内容PreparedStatementps con prepareStatement UPDATEstudentsetscore whereid inti 0 idlen id length do ps setInt 1 score i ps setString 2 id i ps executeUpdate 执行SQL修改命令 i while i id length ps close 查询数据库并把数据表的内容输出到屏幕上Statements con createStatement ResultSetrs s executeQuery select fromstudent while rs next System out println rs getString id t rs getString name t rs getInt score s close con close catch SQLExceptione System out println SQLException e getMessage 在这个程序中使用了PreparedStatement类 它提供了一系列的set方法来设定位置 请注意程序中PreparedStatement 方法中的参数 程序中的语句 PreparedStatementps con prepareStatement UPDATEstudentsetscore whereid ps setInt 1 score i 将score i 的值作为SQL语句中第一个问号所代表参数的值ps executeUpdate 其中 UPDATEstudentsetscore whereid 这个SQL语句中各字段的值并没指定 而是以 表示 程序必须在执行ps executeUpdate 语句之前指定各个问号位置的字段值 例如 用ps setInt 1 score i 语句中的参数1指出这里的score i 的值是SQL语句中第一个问号位置的值 当前面两条语句执行完后 才可执行ps executeUpdate 语句 完成对一条记录的修改 程序中用到的查询数据库并把数据表的内容输出到屏幕的语句是 ResultSetrs s executeQuery select fromstudent while rs next System out println rs getString id t rs getString name t rs getInt score 其中 executeQuery 返回一个ResultSet类的对象rs 代表执行SQL查询语句后所得到的结果集 之后再在while循环中使用对象rs的next 方法将返回的结果一条一条地取出 直到next 为false 运行结果如下 0001王明800002高强890003李莉60 10 3 4删除记录 示例程序4 java 删除表中第二条记录 然后把数据表的内容输出 importjava sql publicclassc4 publicstaticvoidmain String args StringJDriver sun jdbc odbc JdbcOdbcDriver StringconURL jdbc odbc TestDB try Class forName JDriver catch java lang ClassNotFoundExceptione System out println ForName e getMessage try Connectioncon DriverManager getConnection conURL Statements con createStatement 删除第二条记录PreparedStatementps con prepareStatement deletefromstudentwhereid ps setString 1 0002 ps executeUpdate 执行删除 查询数据库并把数据表的内容输出到屏幕上 ResultSetrs s executeQuery select fromstudent while rs next System out println rs getString id t rs getString name t rs getString score s close con close catch SQLExceptione System out println SQLException e getMessage 数据库驱动程序连接数据库 1 下载数据库驱动程序2 连接URL 连接Access数据库 StringconURL jdbc odbc Driver MicroSoftAccessDriver mdb DBQ TestDB mdb ConnectionEx1Con DriverManager getConnection conURL 见P116例10 5 连接SQLServer数据库 见P325例10 8 连接Oracle数据库 Class forName oracle jdbc OracleDriver newInstance StringdbURL jdbc oracle thin yourservername 1521 yoursid Stringuser youruser Stringpassword yourpassword Connectionc null c DriverManager getConnection dbURL user password oracle jdbc OracleDriver是一个类 在oracle jdbc目录下有一个OracleDriver class的文件
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!