




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JDBC JDBC API中的关键类和接口 数据库操作步骤,第十章 数据库编程,JDBC, Java Database Connectivity,是Java中用来访问数据库的一组API, JDBC的编程接口分成两部分:面向应用程序的编程接口 JDBC API;支持底层开发的驱动程序接口,JDBC Driver API,主要提供给数据库厂商开发JDBC驱动程序,Java应用程序,JDBC驱动程序管理器,JDBC API,JDBC/ODBC桥,厂商提供 的JDBC 驱动程序,ODBC驱动程序,数据库,JDBC Driver API,数据库,JDBC和ODBC都基于同一个思想: 根据API编写的程序都可以与驱动 程序管理器进行通信,而驱动程序 管理器则通过插入其中的驱动程序 与实际数据库进行通信,JDBC API中关键类和接口, 包, java.sql javax.sql(jdk1.4补充), java.sql.Driver接口 该接口的实现类是某种数据库的驱动程序类,用来初始化驱动程序,如果需要连接sql server 2000数据库,则使用其提供的jdbc driver 如果要连接其他数据库,则相应修改setProperty第二个参数,Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver); System.setProperty(“jdbc.drivers“, “com.microsoft.jdbc.sqlserver.SQLServerDriver“);, java.sql.DriverManager类,管理一组JDBC驱动程序,根据需要使用驱动程序连接数据库,static Connection getConnection(String url,String user,String password) throws SQLException / 取得数据库连接,JDBC API中关键类和接口,/连接sql server 2000 String url=“jdbc:microsoft:sqlserver:/localhost:1433; databasename=addressbookdatabase”; /表示数据源是本机的sql server中的数据库addressbookdatabase Connection conn=DriverManger.getConnection(url, “sa”,”buct105”); /连接mysql conn=DriverManager.getConnection(“jdbc:mysql:/localhost/java“, “root“,“buct105“);, java.sql.Connection接口, 表示一个数据库连接,Statement createStatement( ) throws SQLException /创建一个Statement对象,void close( ) /关闭数据库连接,释放资源,JDBC API中关键类和接口, java.sql.Statement接口,向数据库服务器发送SQL语句,ResultSet executeQuery(String sql ) throws SQLException /将一个查询语句发送给数据库服务器,查询结果保存在ResultSet对象中,int executeUpdate(String sql ) throws SQLException /执行delete,update和insert语句,建库,建表语句,返回受影响的记录数目,JDBC API中关键类和接口,void close( ) /关闭Statement对象以及它所对应的结果集, java.sql.ResultSet接口, 保存查询结果,int getRow( ) throws SQLException /取得当前记录号,记录编号从1开始,/指针移动 boolean next( ) throws SQLException /将记录指针移到下一条记录处,成功返回true boolean previous( ) throws SQLException /将记录指针移到前一条记录处,成功返回true boolean first( ) throws SQLException boolean last( ) throws SQLException boolean absolute( int row) throws SQLException,JDBC API中关键类和接口,/读取当前记录的各字段值 String getString(String columnName ) throws SQLException /读取当前记录中指定字段名的值,该值以字符串方式返回 String getString(int columnIndex ) throws SQLException /读取当前记录中指定索引号字段的值,返回字符串,索引从1开始 类似的还有: getByte,getShort,getInt,getLong,getDate,getFloat,getDouble等, java.sql.ResultSet接口,JDBC API中关键类和接口,void close( ) /关闭当前结果集,数据库操作步骤, 第一步,指定JDBC Driver, 下载相应的jar文件,配置classpath;在需要时注册JDBC Driver;,/注册sql server的JDBC Driver System.setProperty(“jdbc.drivers“, “com.microsoft.jdbc.sqlserver. SQLServerDriver“ ); /连接sql server数据库,使用其提供的jdbc driver,配置mysql的classpath: 方法一:我的电脑-属性-高级-环境变量-添加变量classpath(如果已经有了则不用添加,直接修改,假定jar文件保存在c:jdbcdriver目录下) ,classpath值为 c:jdbcdrivermysql-connector-java-5.1.10-bin.jar; 方法二:在NetBeans或Eclispe直接导入该jar文件,数据库操作步骤, 第二步,数据库连接, 创建Connection对象,指定数据源,用户名,密码 Connection conn=DriverManger.getConnection(url, userName, password); 数据库操作完成之后,需要使用close关闭连接,/连接mysql Connection conn=DriverManager.getConnection(“jdbc:mysql:/localhost/java“, “root“,“buct105“);,数据库操作步骤, 第三步,创建创建Statement对象,执行SQL语句,Statement stat=conn.createStatement( ); String sql=“”; stat.executeUpdate(sql);/可以插入,删除,修改数据库的内容 stat.executeQuery(sql);/select查询,Statement stat=conn.createStatement( ); String sql=“insert into person (personName) values(李丽)”; stat.executeUpdate(sql);/向表中插入一行数据,数据库操作步骤,针对查询,executeQuery方法将返回ResultSet对象,可以每次一行地迭代遍历所有查询结果;在初始情况下,调用next方法才能转到查询结果第一行;每次调用next向前移动一行,如果到达最后一行的后面,返回false;,ResultSet result=stat.executeQuery(“select * from person“ ); while(result.next() /依次处理结果中的每一行 System.out.println(result.getString(“personName“); System.out.println(result.getString(“email“); , 第三步,创建创建Statement对象,执行SQL语句,数据库操作步骤,注意: 一个Connection对象可以对应一个或多个Statement对象; 一个Statement对象可以用于多个不相关的命令和操作,但是只能对应一个结果集; 当使用完Connection,Statement和ResultSet后,应该调用close方法进行关闭; 关闭Connection将关闭连接上的所有对象;关闭Statement将关闭该对象和结果集。,例:MySQLTest.java,PropertiesTest.java, 第四步,释放数据库连接,conn.close();/关闭连接,释放资源,数据库操作步骤,例:TableTest.java /JTable使用示例 AddressBookManager.java PersonDao.java Person.java,String data=“1“,“李
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公文规则考试题库及答案
- 森林康养知识培训班课件
- 2025年主管护师考试模拟试题附答案
- 2025年陪诊师考试流程详解与试题及答案
- 2025年居民健康档案考试题及答案
- 桥梁挖孔桩施工课件
- 2025年轧钢技术中级考试趋势分析与预测
- 2025年无人机技术面试宝典初级装调检修工模拟题解析
- 桥架与配电箱连接课件
- 北京市中央美术学院附属实验学校2026届化学高二上期中质量跟踪监视模拟试题含解析
- 劳动关系协调员真题模拟汇编(共1142题)
- 转岗申请表(标准样本)
- 中医病证诊断疗效标准
- 数独课件完整版
- 摊铺机使用说明rp953e-903e操作手册
- 伸屈指肌腱断裂
- GB 6675.12-2014玩具安全第12部分:玩具滑板车
- 淮扬菜-淮安淮扬菜名单大全
- 2021年秋期新人教版部编本六年级语文上册教材解读
- 标准化考核办法
- (本科)生产与运作管理第三章教学课件
评论
0/150
提交评论