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)的更多相关文章

  1. MySQL 系列(三)你不知道的 视图、触发器、存储过程、函数、事务、索引、语句

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  2. qlserver、Mysql、Oracle三种数据库的优缺点总结

    这篇文章主要介绍了sqlserver.Mysql.Oracle三种数据库的优缺点总结,需要的朋友可以参考下   一.sqlserver优点:易用性.适合分布式组织的可伸缩性.用于决策支持的数据仓库功能 ...

  3. MySQL基础(三)——约束

    MySQL基础(三)--约束 约束是在表上强制执行的数据校验规则,主要用于维护表中数据的完整性以及当数据之间有以来关系时,保护相关的数据不会被删除. 根据约束对列的限制,可以划分为:单列约束(只约束一 ...

  4. mysql优化(三)–explain分析sql语句执行效率

    mysql优化(三)–explain分析sql语句执行效率 mushu 发布于 11个月前 (06-04) 分类:Mysql 阅读(651) 评论(0) Explain命令在解决数据库性能上是第一推荐 ...

  5. MySQL系列(三)---索引

    MySQL系列(三)---索引 前言:如果有疏忽或理解不当的地方,请指正. 目录 MySQL系列(一):基础知识大总结 MySQL系列(二):MySQL事务 MySQL系列(三):索引 什么是索引 如 ...

  6. MySQL安装的三种方式

    .markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(171, 178 ...

  7. MySQL 系列(三)事务

    MySQL 系列(三)事务 一组要么同时执行成功,要么同时执行失败的 SQL 语句.是数据库操作的一个执行单元! 事务开始于: 连接到数据库上,并执行条 DML 语句(INSERT. UPDATE 或 ...

  8. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  9. MySQL - 常见的三种数据库存储引擎

    原文:MySQL - 常见的三种数据库存储引擎 数据库存储引擎:是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建.查询.更新和删除数据.不同的存储引擎提供不同的存储机制.索引技巧. ...

随机推荐

  1. abap事件。

    1:https://www.w3cschool.cn/sap_abap/sap_abap_object_events.html *&------------------------------ ...

  2. 图片在IE8浏览器多一个有边框问题解决办法

    最后在网上找了一下答案,IE8浏览器图片多一个有色边框,而Chrome浏览器没有边框的解决办法.   指定img的边框样式:   img{border-style:none;}

  3. 关于PHP将对象数据写入日志的问题

    有时候在调试项目的时候,需要将一个对象或者对象的实例记录下来观察数据,如果用json_encode可能拿到的是空数据, 此时,改为使用 $data = print_r($data,1); 然后将 $d ...

  4. 【Java】-NO.16.EBook.4.Java.1.012-【疯狂Java讲义第3版 李刚】- Swing

    1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.011-[疯狂Java讲义第3版 李刚]-  Swing Style:EBook Series:Jav ...

  5. 单例模式多线程安全写法(double-lock-check)

    原始版本 public static Object getInstance() { if (instance != null) { return instance; } instance = new ...

  6. CLR总览

    Contents 第1章CLR的执行模型... 4 1.1将源代码编译成托管代码模块... 4 1.2 将托管模块合并成程序集... 6 1.3加载公共语言运行时... 7 1.4执行程序集的代码.. ...

  7. 当我的url请求会变成jsp页面路径时的解决办法

    @RequestMapping(value="shippingOrder") $.post("/ezsh/orderAd/shippingOrder",para ...

  8. vue中axios的封装

    第一步还是先下载axios cnpm install axios -S 第二步建立一个htttp.js import axios from 'axios'; import { Message } fr ...

  9. LeetCode67.二进制求和

    给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11", b = "1" 输出: ...

  10. 集体干死java 在启动.sh

    #!/bin/bash#reboot .jar#author wangdonghuipid=`ps -ef |grep java |awk '{print $2}'`echo $pidecho'--- ...