JDBC操作,执行数据库更新操作
目标:
使用Connection对象取得Statement实例
使用Statement进行数据增删改。
Statement接口
要对数据库操作,要使用Statement完成。此接口可以使用Connection接口中提供的createStatement()方法实例化。

证明:所有操作必须从连接展开,通过连接取得操作接口实例。
向student表中增加数据。
package 类集;
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class InsertDemo01{
// 定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
// 定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/sys" ;
// MySQL数据库的连接用户名
public static final String DBUSER = "root" ;
// MySQL数据库的连接密码
public static final String DBPASS = "aaaaaa" ;
public static void main(String args[]) throws Exception { // 所有的异常抛出
Connection conn = null ; // 数据库连接
Statement stmt = null ; // 数据库操作
Class.forName(DBDRIVER) ; // 加载驱动程序
String sql = "insert into student values('大红',35)";
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt = conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql) ; // 执行数据库更新操作
stmt.close() ; // 关闭操作
conn.close() ; // 数据库关闭
}
};
执行结果:
Sun Apr 09 20:46:14 CST 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
查询数据库:

证明成功插入。
动态插入数据
package 类集;
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class InsertDemo01{
// 定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
// 定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/sys" ;
// MySQL数据库的连接用户名
public static final String DBUSER = "root" ;
// MySQL数据库的连接密码
public static final String DBPASS = "aaaaaa" ;
public static void main(String args[]) throws Exception { // 所有的异常抛出
Connection conn = null ; // 数据库连接
Statement stmt = null ; // 数据库操作
Class.forName(DBDRIVER) ; // 加载驱动程序
String name = "李康" ; // 姓名
int age = 23 ; // 年龄
String sql = "INSERT INTO student(name,age) "+
" VALUES ('"+name+"','"+age+"')" ;
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt = conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql) ; // 执行数据库更新操作
stmt.close() ; // 关闭操作
conn.close() ; // 数据库关闭
}
};
数据库查询结果:

为什么要关闭两次:
stmt.close() ; // 关闭操作
conn.close() ; // 数据库关闭
数据库操作中,只可以关闭一次,这一次就是关闭操作,一般JDBC中要进行正者打开,倒着关闭。
更新操作:
package 类集;
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class UpdateDemo{
// 定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
// 定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/sys" ;
// MySQL数据库的连接用户名
public static final String DBUSER = "root" ;
// MySQL数据库的连接密码
public static final String DBPASS = "aaaaaa" ;
public static void main(String args[]) throws Exception { // 所有的异常抛出
Connection conn = null ; // 数据库连接
Statement stmt = null ; // 数据库操作
Class.forName(DBDRIVER) ; // 加载驱动程序
String name = "李华" ; // 姓名
int age = 25 ; // 年龄
String sql = "UPDATE student SET name='"+name+"', age=" + age+" where name='大红'";
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt = conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql) ; // 执行数据库更新操作
stmt.close() ; // 关闭操作
conn.close() ; // 数据库关闭
}
};
操作结果:

成功更新。
数据删除
package 类集;
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class DeleteDemo{
// 定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
// 定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/sys" ;
// MySQL数据库的连接用户名
public static final String DBUSER = "root" ;
// MySQL数据库的连接密码
public static final String DBPASS = "aaaaaa" ;
public static void main(String args[]) throws Exception { // 所有的异常抛出
Connection conn = null ; // 数据库连接
Statement stmt = null ; // 数据库操作
Class.forName(DBDRIVER) ; // 加载驱动程序
String sql = "DELETE FROM student" ;
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt = conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql) ; // 执行数据库更新操作
stmt.close() ; // 关闭操作
conn.close() ; // 数据库关闭
}
};
成功删除
JDBC操作,执行数据库更新操作的更多相关文章
- 吴裕雄--天生自然JAVA数据库编程:执行数据库更新操作
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.Statement ; public clas ...
- 使用原生JDBC方式对数据库进行操作
使用原生JDBC方式对数据库进行操作,包括六个步骤: 1.加载JDBC驱动程序 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM.可以通过java.lang.Class类的静态方法forNa ...
- python 数据库更新操作
数据库更新操作 更新操作用于更新数据表的的数据,以下实例将 EMPLOYEE 表中的 SEX 字段为 'M' 的 AGE 字段递增 1: #!/usr/bin/python # -*- coding: ...
- Python学习(21)python操作mysql数据库_操作
目录 数据库连接 创建数据库表 数据库插入操作 数据库查询操作 数据库更新操作 删除操作 执行事务 错误处理 数据库连接 连接数据库前,请先确认以下事项: 您已经创建了数据库 TEST. 在TEST数 ...
- JDBC增删改数据库的操作
JDBC入门及简单增删改数据库的操作 一.JDBC的引入 1.JDBC的概念 JDBC:Java Database Connection,表示数据库连接(任何数据库都支持JDBC的连接),是一个独立于 ...
- JDBC技术对数据库进行操作
什么是 JDBC: • JDBC(Java DataBase Connectivity)java 数据库连接 • 是 JavaEE 平台下的技术规范 • 定义了在 Java 语言中连接数据,执行 SQ ...
- jdbc连接远程数据库进行操作
链接远程数据库的时候,要把获得链接的url进行修改 1 package com.test; import java.sql.Connection; import java.sql.DriverMana ...
- 记录Access数据库更新操作大坑一个
对于更新Access数据库的操作,必须保持参数数组与sql语句中参数顺序一致,如下: public bool Update(MyModel model) { StringBuilder strSql ...
- server用JDBC对mysql数据库进行操作
1:获取数据库连接 Connection connection=getConnection(); 2:准备SQL语句 3:调用Connection的creatStatement()方法获取Statem ...
随机推荐
- Linux基础系列-Day3
Vim文本编辑器 •Linux设计的重要原则是信息存储在基于文本的文件中. 注:Linux“一切皆文件”是指包含文本文件和用户不可读的二进制文件(如block设备文件) •文本文件:无格式文件,作用 ...
- Knockout.js(三):计算属性(Computed Observable)
在Knockout2.0之前,计算属性被称之为依赖属性,在2.0版本中,ko.dependentObservable重命名为ko.computed,因为它在读.解释和类型上更简单.在实际使用中,ko. ...
- SQL查询中关键词的执行顺序
写在前面:最近的工作主要是写SQL脚本,在编写过程中对SQL的执行和解析过程特别混乱不清,造成了想优化却无从下手.为此专门在网上找博文学习,并做了如下总结. 1.查询中常用到的关键词有: SELECT ...
- xtuoj 1233 coins(dp)
Coins Accepted : 120 Submit : 305 Time Limit : 1000 MS Memory Limit : 65536 KB Coins Problem Des ...
- [TCO2013]Block3Checkers
题意:一个网格上有一些障碍和$3$个在网格边界上的棋子,你要添加一些障碍使得没有两个棋子四连通,问最少添加多少个障碍 官方题解——一张图教你做人... 三个棋子将网格边界分成三段,添加障碍后网格中一定 ...
- 【状压DP】BZOJ2734-[HNOI2012]集合选数
已经八月份了药丸,开始肝作业并且准备高考啦!! [题目大意] <集合论与图论>这门课程有一道作业题,要求同学们求出{1, 2, 3, 4, 5}的所有满足以 下条件的子集:若 x 在该子集 ...
- Python的函数参数和递归参数
位置参数 def power(x): return x*x; 默认参数 指的是在函数定义的时候,就赋予一些参数默认值,在调用这个函数的时候不必多次传入重复的参数值. 如定义一个多次输出同一个年龄阶段和 ...
- 2016.4.3NOI上较难的动规题目(仔细分析样例)--王老师讲课整理
1.NOI 191:钉子和小球 总时间限制: 1000ms 内存限制: 65536kB 描述 有一个三角形木板,竖直立放,上面钉着n(n+1)/2颗钉子,还有(n+1)个格子(当n=5时如图1).每 ...
- php-scandir()报错
l linux下 vim /usr/local/php/etc/php.in l 直接斜杠找 /disable_functions 回车 l 按i键 l ...
- SAP MM 模块常用的数据表
SAP MM模块常用数据表: Table Table Class Application Class Data Class Description EBAN TRANSP ME Transactio ...