JDBC数据库编程常用接口(转)
JDBC的全称是Java DataBase Connectivity,是一套面向对象的应用程序接口(API),制定了统一的访问各种关系数据库的标准接口,为各个数据库厂商提供了标准接口的实现。这东西能够实现软件的扩平台性。
JDBC是一种底层API,在访问数据库是需要在业务逻辑中直接嵌入SQL语句。
JDBC不能够直接访问数据库,必须依赖数据库厂商提供的JDBC驱动程序完成以下三步工作1.同数据库建立连接;2.向数据库发送SQL语句;3.处理从数据库返回的结果。
*JDBC驱动
1.JDBC-ODBC桥连是指通过本地的OBDC Driver连接到RDBMS上。
2.JDBC-Native桥连通过调用本地的native程序实现数据库连接,这种类型的驱动程序把客户机API上的JDBC调用转为Oracle,Sybase,Informix,DB2或者其它DBMS的调用。
3.JDBC网络驱动是一种完全利用Java语言编写的JDBC驱动。
4.本地协议驱动是一种完全利用Java语言编写的JDBC驱动,这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。
#JDBC中常用接口
-Driver接口
每种数据库的驱动程序都应该提供一个实现java.sql.Driver接口的类,简称Driver类。
加载JDBC-ODBC驱动:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
-DriverManager类
java.sql.DriverManager类负责管理JDBC驱动程序的基本服务,是JDBC的管理层,作用于用户和驱动程序之间,负责跟踪可用的驱动程序,并在数据和驱动程序之间建立连接。
(静态方法)getConnection(String url,String user,String password)用来建立数据库连接。
setLoginTimeout(int seconds)用来设置每次连接数据库的最长时间
println(String message)用来输出指定消息到当前的JDBC日记流
-Connection接口
java.sql.Connection接口代表与特定数据库的连接,在接连的上下文中可以执行SQL语句并返回结果,还可以通过getMetaData()方法获得由数据库提供的相关信息。
createStatement()创建并返回一个Statement 实例,通常在执行无参数的SQL语句是创建实例。
-Statement接口
java.sql.Statement接口用来执行静态SQL语句,并返回执行结果。
对于INSERT,IPDATE和DELETE语句,调用executeUpdate(String sql)方法;对于SELECT语句,则调用executeQuery(String sql)方法,并返回一个永远不能为null的ResultSet实例。
-PreparedStatement接口
java.sql.PreparedStatement接口继承并扩展了Statement接口,用来执行动态的SQL语句,即包含参数的SQL语句。
通过setXxx()方法为SQL语句中的参数赋值时,建议利用与参数类型匹配的方法,也可以利用setObject()为各种类型赋值。
PreparedStetement ps=connection.preparedStatement("select * from table_name where id>? and (name=? or name=?)");
ps.setInt(1,6);
ps.setString(2,"马先生");
ps.setObject(3,"李先生");
ResultSet rs=ps.executeQuery();
clearParameters()清除当前参数的值。
-CallableStatement接口
java.sql.CallableStatement接口继承并扩展PreparedStatement接口,用来执行SQL的存储过程。
-ResultSet接口
java.sql.ResultSet接口类似于一个数据表,通过该接口的实例可以获得检索结果集,以及对应数据表的相关信息,ResultSet实例通过执行查询数据库的语句生成。
next()方法可以将指针移动到下一行,返回bool类型。只能迭代一次!
getXxx()方法均有两个重载方法,分别根据列的索引号和列的名称检索列值。
first(),返回bool值
last(),返回bool值
previous()将指针移动到上一行,返回bool值
beforeFirst()
afterLast()
absolute()移动到指定行,int>0向下移动,int<0,向后移动
relative()相对当前位置移动到指定行,int>0向下移动,int<0,向后移动
getRow()当前行索引编号
findColumn()查看指定列名的索引编号
isBeforeFirst()查看指针是否处于实例开头,返回bool
isFirst()查看指针是否处于第一行,返回bool
deleteRow()删除当前行,执行该方法后,在执行close()之后才会同步到数据库
http://www.cnblogs.com/rond/articles/1907133.html
JDBC数据库编程常用接口(转)的更多相关文章
- Java JDBC数据库编程
课程 Java面向对象程序设计 一.实验目的 掌握数据库编程技术 二.实验环境 1.微型计算机一台 2.WINDOWS操作系统,Java SDK,Eclipse开发环境,Microsoft SQL ...
- ADO+MFC数据库编程常用语句
设在OnInitDialog()函数中,已经完成了初始化COM,创建ADO连接等操作,即 // 初始化COM,创建ADO连接等操作 if (!AfxOleInit()) { AfxMessageBox ...
- JDBC数据库编程:PreparedStatement接口
使用PreparedStatement进行数据库的更新及查询操作. PreparedStatement PreparedStatement是statement子接口.属于预处理. 使用statemen ...
- JDBC数据库编程:ResultSet接口
掌握ResultSet接口 使用ResultSet接口进行查询 ResultSet接口 在JDBC操作中,数据库所有查询记录将使用ResultSet进行接收,并使用ResultSet显示内容. 常用方 ...
- JDBC数据库编程:callableStatement接口
了解MySQL存储过程建立, 了解存储过程中参数传递的三种方式 了解callablestatement调用存储过程操作. 因为在现在开发中,使用存储过程的地方越来越少,所以,对于存储过程使用,只需要了 ...
- JDBC数据库编程
常识名词:ODBC ,JDBC,JDBC API ,JDBC Driver API 数据准备,续上节: JDBC编程流程 最基本的JDBC操作 本段内容主要完成JDBC的增删查改操作 packa ...
- Java高级篇(三)——JDBC数据库编程
JDBC是连接数据库和Java程序的桥梁,通过JDBC API可以方便地实现对各种主流数据库的操作.本篇将介绍一下如何使用JDBC操作数据库(以MySQL为例). 一.JDBC JDBC制定了统一访问 ...
- Java ——JDBC数据库编程
数据库分类 关系型数据库:以表来存放数据的,数据与数据之间的关系通过表之间的连接体现 面向对象的数据库:保存的是对象本身 其它 数据库:数据库管理系统中创建一个个的保存数据的单位 数据是保存在数据库的 ...
- JDBC数据库编程(java实训报告)
文章目录 一.实验要求: 二.实验环境: 三.实验内容: 1.建立数据库连接 2.查询数据 2.1 测试结果 3.添加数据 3.1.测试结果 4.删除数据 4.1.测试结果 5.修改数据 5.1 测试 ...
随机推荐
- Selenium Webdriver firefox 浏览器问题
Selenium Webdriver 在使用firefox 测试会牵扯到firefox的安装路径的问题 1.默认安装路径在c盘的情况下: WebDriver driver = new FirefoxD ...
- 【SSH进阶之路】Hibernate映射——多对一单向关联映射(四)
[SSH进阶之路]Hibernate基本原理(一) ,小编介绍了Hibernate的基本原理以及它的核心,採用对象化的思维操作关系型数据库. [SSH进阶之路]Hibernate搭建开发环境+简单实例 ...
- Swift - 导航条(UINavigationBar)的使用
与导航控制器(UINavigationController)同时实现导航条和页面切换功能不同. 导航条(UINavgationBar)可以单独使用,添加至任何的UIView中.UINavigation ...
- Trufun云端建模平台之云端UML工具发布
Trufun云端建模平台包括云端UML工具,云端BPMN工具,云端思维导图工具. 云端UML工具是目前最先进的基于HTML5的UML2.x建模工具,所有代码基于JAVA开发,支持类图.用例图.活动图. ...
- phabricator在mac上的搭建(转)
环境:OS X Yosemite 10.10.5 前提:phabricator主要是由php写的,而且是以website方式运行的,所以mac上要先安装好 php + nginx(或apache) + ...
- cct软件测试
<全国计算机等级考试三级教程:软件测试技术(2016年版)>根据教育部考试中心制订的<全国计算机等级考试三级软件测试技术考试大纲(2013年版)>编写而成.主要内容包括软件测试 ...
- 搭建实时同步data guard的最高可用-切换主备
搭建实时同步data guard的最高可用-切换主备 首先保证主库在归档模式下:错过N次了 准备二台机器(hostname gw hosts ech0)host-only [root@node1 ~] ...
- 从源代码角度分析ViewStub 疑问与原理
一.提出疑问 ViewStub比較简单.之前文章都提及到<Android 性能优化 三 布局优化ViewStub标签的使用>.可是在使用过程中有一个疑惑,究竟是ViewStub上设 ...
- 14.5.4 InnoDB File-Per-Table Tablespaces 每个表一个文件
14.5.4 InnoDB File-Per-Table Tablespaces 每个表一个文件 从历史上看, 所有的InnoDB 表和索引是存储在system 表空间, 这个整体的方法是针对机器专注 ...
- RAC 备份到本地不同设备