Mysql初级第三天(wangyun)
1.JDBC简介
1).数据库驱动
2).SUN公司为统一数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC。
3).JDBC全称:Java Database Connectivity(Java数据库连接),它主要由接口组成。
4).组成JDBC的2个包
java.sql
javax.sql
5).开发JDBC应用需要以上两个包的支持外,还需要导入相应JDBC的数据库实现(即数据库驱动)。 2.连接数据库的步骤
加载驱动
建立连接
创建执行SQL语句
执行语句
处理执行结果
释放资源 3.加载驱动
Class.forName("com.mysql.jdbc.Driver"); // 灵活性更高 4. 建立连接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbTest?useUnicode=true&characterEncoding=utf8",userId,pwd); url格式:
JDBC:子协议:子名称//主机名:端口/数据库名?属性名=属性值&属性名=属性值 5.创建执行SQL语句
1).Statement
Statement stmt = conn.createStatement(); // 创建向数据库发送sql的Statement对象
stmt.executeQuery( sql ); 2).PreparedStatement
String sql = "select * from table_name where col_name = ? ";
PreparedStatement ps = conn.prepareStatement(sql); // 创建向数据库发送预编译的sql的PreparedStatement对象
ps.setString(1 ,"col_value");
ps.executeQuery(); 6.处理执行结果
ResultSet rs = stmt.executeQuery();
while(rs.next()){
rs.getString("col_name");
// ...
} 1).获取任意类型的数据
getObject(int index)
getObject(String columnName) 2).获取指定类型的数据
getString(int index)
getString(String columnName) 3).next() 移动到下一行
Previous() 移动到前一行
absolute(int row) 移动到指定行【row从1开始计算】
beforeFirst() 移动到ResultSet的最前面
afterLast() 移动到ResultSet的最后面 7.释放资源
释放ResultSet,Statement,Connection
数据库连接(Connection)是十分稀有的资源,用完后必须马上释放。
Connection的使用原则是尽量晚创建尽量早释放。
释放资源语句尽量放在finally语句中。 8.使用JDBC对数据库进行CRUD
1).jdbc中的Statement对象用于向数据库发送SQL语句,想完成对数据库的增删改查,
只需要通过这个对象向数据库发送增删改查语句即可 2).Statement对象的executeUpdate方法,用于向数据库发送增删改的SQL语句,
executeUpdate执行完后,将会返回一个整数(即增删改语句导致了数据库中几行数据发送了变化。) 3).Statement对象的executeQuery方法,用于向数据库发送查询的SQL语句,
executeQuery方法返回代表查询结果的ResultSet对象。 演示下面的综合练习
练习:编写程序对Student表进行增删改查操作。
练习:编写工具类简化CRUD操作。
Mysql初级第三天(wangyun)的更多相关文章
- MySQL 系列(三)你不知道的 视图、触发器、存储过程、函数、事务、索引、语句
第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...
- qlserver、Mysql、Oracle三种数据库的优缺点总结
这篇文章主要介绍了sqlserver.Mysql.Oracle三种数据库的优缺点总结,需要的朋友可以参考下 一.sqlserver优点:易用性.适合分布式组织的可伸缩性.用于决策支持的数据仓库功能 ...
- MySQL基础(三)——约束
MySQL基础(三)--约束 约束是在表上强制执行的数据校验规则,主要用于维护表中数据的完整性以及当数据之间有以来关系时,保护相关的数据不会被删除. 根据约束对列的限制,可以划分为:单列约束(只约束一 ...
- mysql优化(三)–explain分析sql语句执行效率
mysql优化(三)–explain分析sql语句执行效率 mushu 发布于 11个月前 (06-04) 分类:Mysql 阅读(651) 评论(0) Explain命令在解决数据库性能上是第一推荐 ...
- MySQL系列(三)---索引
MySQL系列(三)---索引 前言:如果有疏忽或理解不当的地方,请指正. 目录 MySQL系列(一):基础知识大总结 MySQL系列(二):MySQL事务 MySQL系列(三):索引 什么是索引 如 ...
- MySQL安装的三种方式
.markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(171, 178 ...
- MySQL 系列(三)事务
MySQL 系列(三)事务 一组要么同时执行成功,要么同时执行失败的 SQL 语句.是数据库操作的一个执行单元! 事务开始于: 连接到数据库上,并执行条 DML 语句(INSERT. UPDATE 或 ...
- MYSQL学习笔记三:日期和时间函数
MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...
- MySQL - 常见的三种数据库存储引擎
原文:MySQL - 常见的三种数据库存储引擎 数据库存储引擎:是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建.查询.更新和删除数据.不同的存储引擎提供不同的存储机制.索引技巧. ...
随机推荐
- PHP策略模式1
[IUser.php] <?php /** * 策略模式 * 将一组特定的行为和算法封装成类,用来适应某些特定的上下文环境,实现从硬编码到解耦 * 应用举例:电商系统针对不同性别跳转到不同的商品 ...
- Spark log4j日志配置详解(转载)
一.spark job日志介绍 spark中提供了log4j的方式记录日志.可以在$SPARK_HOME/conf/下,将 log4j.properties.template 文件copy为 l ...
- [sh]basename&dirname截取路径和文件名&case参数选项
给出全路径,取出路径和文件名 basename使用示例 http://codingstandards.iteye.com/blog/840784 示例一 [root@web ~]# basename ...
- centos7安装Lua
网官有介绍安装:http://www.lua.org/start.html 由于之前我遇到过致命错误并纪录在:https://blog.csdn.net/bingbingtea/article/det ...
- Linux下fork机制详解(以PHP为例)
考:https://blog.csdn.net/jason314/article/details/5640969 1.fork简介 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统 ...
- @AfterThrowing
@AfterThrowing(throwing="ex", pointcut="within(com.xms.controller.*)") public vo ...
- python读取大文件
最近在学习python的过程中接触到了python对文件的读取.python读取文件一般情况是利用open()函数以及read()函数来完成: f = open(filename,'r') f.rea ...
- Beta冲刺阶段4.0
1. 提供当天站立式会议照片一张 2. 每个人的工作 (有work item 的ID) 成员 昨天已完成的工作 今天计划完成的工作 工作中遇到的困难 具体贡献 郑晓丽 活动详情界面的美化 首页活动详情 ...
- SV processses
SV中的structured procedure: 1)intial procedure,keyword只有initial:最开始被调用一次: 2)always procedure,keyword包括 ...
- SQLGetStmtAttr
SQLGetStmtAttr 函数定义: SQLRETURN SQLGetStmtAttr( SQLHSTMT StatementHandle, SQLINTEGER Attribut ...