十五、JDBC操作数据库
1、数据库特点
实现数据共享、减少数据的冗余度、数据的独立性、数据集中控制、数据的一致性和可维护性。
2、数据库种类和功能
(1)层次型数据库:类似于树结构,是一组通过链接而互相联系在一起的记录。
(2)网状型数据库:网络模型是使用网络结构表示实体类型、实体间联系的数据模型。
(3)面向对象型数据库:建立在面向对象模型的基础上。
(4)关系型数据库:基于关系模型建立的数据库,关系模型由一系列表格组成。
3、JDBC常用类和接口
(1)DriverManager类
管理数据库中所有的驱动程序。
方法:(静态)getConnection(Stirng url,String user,String password)
setLoginTimeout()
println(String message)
(2)Connection接口
与特定的数据库连接。
创建对象:getConnection()
方法:createStatement():创建Statement对象
createStatement(int resultSetType,int resultSetConeurrency)
prepareStatement():创建预处理对象
isRacadOnly():查看是否是只读
setReadOnly():设置读写模式,默认非只读
commit():使所有上一次提交、回滚后的更改成为持久更改,并释放所有数据库锁
roolback():取消当前事物所有更改,并释放所持有的数据库锁。
close():立即释放Connection对象的数据库和JDBC资源。
(3)Statement接口
用于创建向数据库中传递SQL语句的对象。
方法:execute():执行静态的SELECT语句,可能返回多个结果表。
executeQuery(String sql):执行给定的SQL语句,返回单个ResultSet对象
clearBatch():清空对象当前的SQL命令列表
executeBatch():将一批命令提交给数据库执行,如果全部命令执行成功,则返回更新计数组成的数据,数据的顺序与SQL语句的添加顺序对应
executeUpadate():执行给定的SQL语句,该语句可以为INSERT、UPDATE或DELETE语句
addBatch():将给定的SQL命令添加到此Statement对象的当前命令列表中,如果驱动程序不支持批量处理将抛出异常。
(4)PreparedStatement接口
PrepareStatement接口继承Statement,用于执行动态的SQL语句,通过PreparedStatement实例执行的SQL语句,将被编译并保存到PreparedStatement实例中。
方法:execute():执行SQL语句
executeQuery():执行SQL查询语句,返回结果为查询结构集ResultSet对象
executeUpdate():执行SQL语句,该语句必须是一个INSERT、UPDATE、DELETE语句,或是没有返回值的DDL语句
setByte(int pIndex,byte bt)
setDouble(int pIndex,double dou)
setInte(int pIndex,int x)
setObject(int pIndex,Object o)
setString(int pIndex,String str)
(5)ResultSet接口
类似于一个临时表,暂时存放数据库查询操作所过的的结果集。
方法:getInt()、getFloat()、getDate()、getBoolean()、getString()、getObject()、next()、updateInt()、updateFloat()、updateLong()、updateString()、updateObject()、updateNull()、updateDate()、updateDouble()
4、操作数据库
(1)加在数据库驱动
调用forName():Class.forName(String driverManager)
(2)建立连接
getConnection(),将URL、用户名和密码作为参数
(3)向数据库添加数据
获得Statement对象:Connection接口的createStatement(),或调用PreparedStatement()方法
通过executeUpdate()方法执行SQL语句
(4)获得查询结果集
executeQuery()方法执行SELECT查询语句,返回一个ResultSet型的结果集。通过遍历结果集的内容,获得SQL语句执行的结果。
while循环中使用next()方法迭代结果集。
(5)更改数据库中的数据
Statement接口中的executeUpdate()方法进行修改操作,或PreparedStatement接口中的executeUpdate()方法。
(6)删除数据库中的数据
executeUpdate()方法
(7)模糊查询
LIKE关键字,“%”代替0或多个字符,“_”代替一个字符
十五、JDBC操作数据库的更多相关文章
- Spring入门(十五):使用Spring JDBC操作数据库
在本系列的之前博客中,我们从没有讲解过操作数据库的方法,但是在实际的工作中,几乎所有的系统都离不开数据的持久化,所以掌握操作数据库的使用方法就非常重要. 在Spring中,操作数据库有很多种方法,我们 ...
- JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一
系列博文: JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一 传送门 JavaWeb_(Mybatis框架)使用Mybatis对表进行增.删.改.查操作_ ...
- 用于JDBC操作数据库的公共类
/* * @(#)CommonSql.java 2011-9-5 * * Copyright 2011 Bianjing,All rights reserved. */ import java.sql ...
- JDBC操作数据库的学习(2)
在上一篇博客<JDBC操作数据库的学习(1)>中通过对例1,我们已经学习了一个Java应用如何在程序中通过JDBC操作数据库的步骤流程,当然我们也说过这样的例子是无法在实际开发中使用的,本 ...
- JDBC操作数据库的学习(1)
单单对数据库的操作,比如说MySQL,我们可以在命令行窗口中执行,但是一般是应用程序要操作数据库,因此我们应该在程序中的代码上体现对数据库的操作,那么使用程序应用如何操作数据库呢?那就要使用到数据库的 ...
- JDBC操作数据库的三种方式比较
JDBC(java Database Connectivity)java数据库连接,是一种用于执行上sql语句的javaAPI,可以为多种关系型数据库提供统一访问接口.我们项目中经常用到的MySQL. ...
- Spark Streaming通过JDBC操作数据库
本文记录了学习使用Spark Streaming通过JDBC操作数据库的过程,源数据从Kafka中读取. Kafka从0.10版本提供了一种新的消费者API,和0.8不同,因此Spark Stream ...
- python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...
- JDBC操作数据库的基本步骤:
JDBC操作数据库的基本步骤: 1)加载(注册)数据库驱动(到JVM). 2)建立(获取)数据库连接. 3)创建(获取)数据库操作对象. 4)定义操作的SQL语句. 5)执行数据库操作. 6)获取并操 ...
- springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验--异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档---jpa访问数据库及page进行分页---整合redis---定时任务
springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验-- 异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档 ...
随机推荐
- BizTalk2010动手实验(二)第一个BizTalk应用
1 课程简介 通过本课程了解BizTalk 的消息机制,发布与订阅机制 2 准备工作 3 操作步骤 3.1 创建BizTalk应用程序 1. 新建应用程序 2. 输入应用程序名称 3.2 创建与配置接 ...
- PowerDesigner 15.2入门学习 二
PowerDesigner中如何生成主键和自增列 1.SQL Server版本: 第一步,首先要建立与数据库的连接,方法较多,这里举个例子: http://www.cnblogs.com/netsql ...
- gif 图片制作和拆解
http://app.baidu.com/app/enter?appid=120980 gif 制作http://app.baidu.com/app/enter?appid=143534 gif 分解
- IOS第八天(6:UITableViewController新浪微博, 模型和 控件位置封装一起statusFrame)
*****HMViewController #import "HMViewController.h" #import "HMStatus.h" #import ...
- Otsu algorithm
一.介绍 OTSU算法也称最大类间差法,有时也称之为大津算法,被认为是图像分割中阈值选取的最佳算法,计算简单,不受图像亮度和对比度的影响,因此在数字图像处理上得到了广泛的应用.它是按图像的灰度特性,将 ...
- 【iCore3 双核心板_FPGA】实验二十二:Niosii——固化程序到 EPCS 里
实验指导书及代码包下载: http://pan.baidu.com/s/1c2lyNQS iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- nba技能表
球员名 主动技能名 主动技能效果 拆解技能名 拆解技能效果 巅峰-纳什 跑投三分 全队三分出手概率提高X%,但体力消耗增加Y% 稳固进攻 全队进攻增加X%,持续整场比赛 巅峰-科比 肉搏 对方全体行动 ...
- Masonry学习分享
不完整目录 •UIScrollView 应用Masonry的正确用法 •tableHeaderView使用Masonry •同向文字显示优先级 1.基础篇 1.1基础使用 1.1.1运行效果 1.1. ...
- J-LINK V8固件烧录指导
1 J-LINK V8固件烧录指导 J-LINK 是使用过程中,如果内部固件意外损坏或丢失,请参考下面操作步骤说明,重新烧录JLINK固件. 1.1 安装固件烧录软件 请ATMEL官方网址下载AT91 ...
- Android中取消GridView & ListView默认的点击背景色
方法一: gridView.setSelector(new ColorDrawable(Color.TRANSPARENT)); listView.setSelector(new ColorDrawa ...