版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第11章数据库应用节目、牙齿章节简介、众多电脑应用节目中的一个茄子重要电脑应用节目、数据密集型应用程序、例如管理信息系统、办公室信息系统、银行信息系统、民航预约系统、信息检索系统等最大的计算机应用程序领域、管理这种大量、持续的JDBC是Sun提供的数据库编程接口,由以Java语言编写的类和接口组成使用JDBC编写的程序可以自动将SQL语句传递到相应的数据库管理系统,而使用JDBC,开发人员几乎可以轻松地将SQL语句传递到任何数据库。这意味着开发人员无需编写访问Oracle的程序,即可编写访问MySQL的其他程序,还可以编写访问SQL Server的程序。使用Java编写的应用程序可以在支持Ja
2、va的任何平台上运行,Java和JDBC的结合使开发人员在开发数据库应用程序时能够“一次编写在任何地方运行!”可以。“牙齿”一章的要点、JDBC中的类以及介面JDBC访问数据库的步骤Java如何连接到数据库、11.1基础知识、11 . 1 . 1 JDBC Java数据库连接(JDBC)是可用于运行SQL语句的Java API。JDBC是数据库应用程序节目开发人员,JDBC的类和接口为Java语言中的数据库编程提供了丰富的类和接口,以便于访问和处理数据。以下主要说明Java.sql套装程式中可用的一般类别和介面:DriverManager类用于管理数据库中的所有驱动程序。跟踪可用驱动程序、注册
3、、注销适用于数据库连接的驱动程序、设置登录时间限制等。Connection介面和Connection接口用于连接应用程序和数据库。Connection接口提供了多种方法来创建各种Statement对象和设置用于数据处理的各种参数。Statement介面、Statement接口用于根据建立的连接向数据库发送SQL语句。Statement界面包含执行SQL语句并返回结果的方法。Statement介面、Statement界面可用于插入、删除、修改数据库和执行查询操作。/插入数据stringinsertsql=insert into student(xh,sname,ssex) values(第1,章
4、3,女性);插入/sqlst . execute(insert SQL);/删除数据stringdeletesql=delete from student wher exh=1;/SQL intresult=删除ST . execute update(delete SQL):/result 0成功,否则失败。/修改数据string update SQL=update student set sname=ley 4 wher exh=1;/修改SQL intresult=st.execute update(更新SQL);/result0表示成功,否则表示失败。/查询数据string select
5、 SQL=select * from student;/祖怀SQL resultset RS=ST . execute query(select SQL);ResultSet介面、ResultSet界面用于临时存储从数据库查询操作中获取的结果,以及访问结果集中的数据。最基本的ResultSet牙齿称为最基本的ResultSet,因为它完成了牙齿ResultSet牙齿查询结果的存储功能,只能读取一次,不能前后滚动。牙齿结果集Statement为Statement ST=conn . create Statement();resultset RS=statement . excute query(
6、SQL str);牙齿结果集不支持滚动读取功能,因此导入这些结果集后,可以使用next()方法逐个读取数据。可滚动的ResultSet牙齿类型支持结果集前后滚动、滚动到第一行、绝对滚动到指定行以及相对移动到指定行。牙齿结果集Statement创建为Statement ST=conn . create Statement(intresult settype,intresultsetconcurrency)。resultset RS=ST . execute query(sqlstr);其中resultSetType设置ResultSet对象是否可滚动。值为ResultSet。TYPE_FORWA
7、RD_ONLY表示向前滚动,而resultset . TYPE _ scroll _ insensitive和result set . TYPE result set concurency表示result setResultSet。CONCUR_READ_ ONLY值为只读,ResultSet .CONCUR_UPDATABLE值显示为可修改。例如,要获取可滚动和只读的结果集,可以指定Statement值,如下所示:statement ST=conn . create statement(result set . type _ scroll _ insensitive,result set .
8、 concur _ reate result setrement),可更新ResultSet等ResultSet对象可以完成对数据库中数据的修改,但ResultSet与数据库中的视图相同,因此并非所有ResultSet牙齿可更新数据的更新都可以完成。必须满足数据库中数据更新的条件。牙齿结果集statement包含Statement ST=createstatement(result . type _ scroll _ insensitive,result.concur 可保留的ResultSet通常为Statement也就是说,调用Connection的commit()方法时,所有Statem
9、ent的查询都有一个对应的结果集,即ResultSet的结果在提交时是关闭还是未关闭。JDBC2.0和1.0都在提交后退出ResultSet牙齿。但是,在JDBC3.0中,可以设置是否关闭ResultSet。要完成这些ResultSet的对象创建,需要三个参数来创建要使用的Statement。结果集Statement创建为Statement ST=create Statement(int result set scroll able),result setrs=ST . excute query(SQL str);前两个参数具有与以前相同的含义。此处仅说明第三个参数。ResultSetHold
10、ability指示在提交结果集后结果集是否打开。如果ResultSet . hold _ cursors _ over _ commit值指示更正提交,则使用ResultSet值,而不是关闭ResultSet牙齿查询操作与Statement界面相同。以下是更新操作的主要说明。键码为statement ST=conn . create statement(result set . type _ scorll _ sensitive,result set . concur String select SQL)/祖怀SQL resultset RS=ST . execute query(select
11、 SQL);/插入数据RS . movetoinsertrow();/插入数据rs.updateString(xh,010103);Rs.updatestring(名字,王5);RS . insertrow();/将插入的数据保存到数据库rs.last()中/将光标移动到新行/删除数据RS . last();/将光标移到新行rs.deleteRow()中/修改数据RS . last();Rs.updateString(xh,010103);Rs.updatestring(名字,王5);RS . updaterow();/将修改后的数据保存在数据库rs.last()中。将光标移动到新行、Prep
12、aredStatement介面、JDBC中的三个茄子Statement对象:Statement、PreparedStatement和CallableStatement。Statement对象用于执行不带参数的简单SQL语句,PreparedStatement继承处理需要多次执行的SQL语句的Statement,可以具有参数,CallableStatement继承执行该对的PreparedStatement,这是实际应用程序中的PreparedStatementPreparedStatement不仅包含SQL语句,而且在大多数情况下,牙齿语句已预编译,因此,如果DBMS只运行SQL语句而不首先编
13、译,执行时间将大大缩短,数据库访问速度也将加快。Statement的子类PreparedStatement继承Statement的所有方法。PreparedStatement接口执行带有参数的SQL语句,因此使用setXXX(参数的序列号,参数的值)方法执行。在此,您可以使用XXX PreparedStatement界面插入、删除、修改数据库和执行查询操作。主键代码如下:/插入数据stringinsertsql=insert into student(xh,sname,ssex) values(?);/SQL prepared statement pstmt=con . prepared st
14、atement(insert SQL)插入:Pstmt.setString(1,010104);Pstmt.setString(2,juck);Pstmt.setString(3,男人);PST mt . execute update();PreparedStatement介面,/删除数据string delete SQL=delete from student wher exh=?/SQL prepared statement PST mt=con . prepared statement删除(delete SQL);Pstmt.setString(1,010104);int result=
15、PST mt . execute update();/result0表示成功,否则表示失败。/修改数据string update SQL=update student set sname=?WHERExh=?)修改/SQL prepared statement PST mt=con . prepared statement(update SQL):PST mt . setstring(1,juck sin);Pstmt.setstring (2,010104);int result=PST mt . execute update();/result0表示成功,否则表示失败。/祖怀数据strin
16、g select SQL=select * from student where xh=?/查询SQL prepared statement PST mt=con . prepared statement(select SQL);Pstmt.setstring (1,010104);ResultSet RS=PST mt . execute query();11.1.2 JDBC访问数据库的一般步骤是调用Class.forName()方法加载驱动程序。调用DriverManager对象的getConnection()方法以获取Connection对象。创建Statement对象,然后准备SQL语句,该语句是Statement对象(立即执行的语句)、PreparedStatement语句(预编译的语句)或CallableStatement对象(存储程序调用中的语句)或
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年工业物联网网络优化技术
- 信用风险评估机构服务合同
- 可持续发展能力培训项目合同
- 宗教用品知识产权许可协议
- 国际法律2026年全球供应链管理合同协议
- 乒乓球设备租赁协议书
- 股权激励员工股权激励续约协议
- 2025年工业物联网容器安全防护策略
- 2026年农业智能装备调度平台设计与运维管理
- 肝移植术后糖尿病发病机理的多维度剖析与探索
- 中国绝经管理与绝经激素治疗指南(2023版)解读
- 百年商埠-梧州课件
- T-ZBDIA 0004-2024 预辊涂铝锌镁高强合金板应用技术标准
- 07第七章-药品上市后再评价与监测管理
- 工业设计方法学
- 八年级国家义务教育质量监测德育考核试题
- 医用氧气使用检查记录表
- 英美文学选读教案
- 新松agc小车控制台tc操作手册
- 二类费用工程建设其他费用取费标准集合上海市
- 西安水务公司招聘考试真题
评论
0/150
提交评论