JDBC系列教材 (二)- 教程
JDBC系列教材 (四)- 在JDBC中使用ResultSet查询SQL语句
登录后可下载
工具版本兼容问题
CRUD是最常见的数据库操作,即增删改查 C 增加(Create) R 读取查询(Retrieve) U 更新(Update) D 删除(Delete) 在JDBC中增加,删除,修改的操作都很类似,只是传递不同的SQL语句就行了。 查询因为要返回数据,所以和上面的不一样,将在查询章节讲解。
纠
本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频
4分6秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。
如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。
chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器
播放本视频会花费3个积分,您目前总共有点积分。再次播放不会花费额外积分
积分增加办法
或者一次性购买总计73个视频
登录后才能播放教学视频,点击登录
积分不够,您目前只有点积分,播放本教学视频需要3点积分
积分增加办法
或者一次性购买总计73个视频
账号未激活
激活后才能播放教学视频 请点击激活
步骤
1
:
增加
步骤
2
:
删除
步骤
3
:
修改
步骤
4
:
练习-增 删 改
步骤
5
:
答案-增 删 改
步骤
1
:
增加
edit
顶
折
纠
问
请先登录
这段代码就是Hello JDBC中的代码,用于向数据库中插入数据
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin");
Statement s = c.createStatement();
)
{
String sql = "insert into hero values(null," + "'提莫'" + "," + 313.0f + "," + 50 + ")";
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
代码行数较多,请点击查看
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin");
Statement s = c.createStatement();
)
{
String sql = "insert into hero values(null," + "'提莫'" + "," + 313.0f + "," + 50 + ")";
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
步骤
2
:
删除
edit
顶
折
纠
问
请先登录
删除和增加很类似,只不过是执行的SQL语句不一样罢了
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin");
Statement s = c.createStatement();
)
{
String sql = "delete from hero where id = 5";
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
代码行数较多,请点击查看
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin");
Statement s = c.createStatement();
)
{
String sql = "delete from hero where id = 5";
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
步骤
3
:
修改
edit
顶
折
纠
问
请先登录
修改也一样,执行另一条SQL语句就可以了
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin");
Statement s = c.createStatement();
)
{
String sql = "update hero set name = 'name 5' where id = 3";
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
代码行数较多,请点击查看
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin");
Statement s = c.createStatement();
)
{
String sql = "update hero set name = 'name 5' where id = 3";
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
步骤
4
:
练习-增 删 改
edit
顶
折
纠
问
请先登录
姿势不对,事倍功半!
点击查看做练习的正确姿势
设计一个方法public static void execute(String sql)方法接受的参数是SQL语句,无论是增加,删除,还是修改,都调用这个方法,每次传不同的SQL语句作为参数
步骤
5
:
答案-增 删 改
edit
顶
折
纠
问
请先登录
请先登录
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费2个积分,您目前总共有点积分。查看相同答案不会花费额外积分。
积分增加办法
或者一次性购买JAVA 中级总计0个答案
(总共需要0积分)
查看本答案会花费2个积分,您目前总共有点积分。查看相同答案不会花费额外积分。
积分增加办法
或者一次性购买JAVA 中级总计0个答案
(总共需要0积分)
账号未激活
账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频
3分2秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。
如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。
chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void execute(String sql) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin"); Statement s = c.createStatement();) {
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
execute("delete from hero where id = 1");
}
}
代码行数较多,请点击查看
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void execute(String sql) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root", "admin"); Statement s = c.createStatement();) {
s.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
execute("delete from hero where id = 1");
}
}
文件内容比较器
把你的代码复制到下面区域。 如果在线比较不好用,请使用客户端比较软件: diffmerge 下载和使用教程
复制代码
代码高亮插件双击即可选中,不过部分同学反应,通过代码高亮插件复制的代码无法在IDEA里正常显示,这里提供TEXTAREA的方式,方便复制,谢谢
分享连接
分享如下连接可增加积分,获取50%佣金
推
如果不方便发连接(如贴吧),可以使用如下由连接转换为的二维码. 鼠标在图片上右键,然后另存为即可
警告: 请勿使用挂机软件刷积分,刷积分不会导致任何注册量,很容易被识别。 一旦发现刷积分,即封号处理,请勿做吃力不讨好之事。
做练习的正确姿势
1. 自行完成练习
根据练习目标尽量自己实现代码效果,期间会碰到疑问,难题,和自己不懂的地方,这些都是必要的过程
2. 带着疑问查看答案
完成过程中,碰到无法解决的问题,带着疑问,查看答案,分析答案的解决思路
3. 查看答案讲解视频
依然有不明白的地方,点开视频讲解,带着疑问,听视频讲解有问题的部分
4. 再做一遍
理解后,再从头做一遍,把有疑问的地方都捋清楚
5. 总结
最后再总结一遍,总结思路,总结解决办法,以后遇到类似的问题,怎么处理
JDBC系列教材 (三)- 增、删、改-总结笔记
把这时的想法,思路,研究都记录下来,等全部学完了,再回过头来巩固和理解,学习效果就会很好,知识点掌握得也牢固.
点击查看我的笔记
总结
代码
保存中预计需要秒
保存完成
保存失败,请联系站长
收藏本知识点
有的同学收藏是为了进行标记,过段时间再来看不明白的地方,在此处可以记录哪里不明白. 单纯收藏的, 直接点击提交即可。
点击查看我的收藏
错误纠正专用
站长比较马虎,难免出现错别字,如果发现哪里文字有误,请提交错误,站长会尽快修改,谢谢
JDBC系列教材 (二)- 教程
JDBC系列教材 (四)- 在JDBC中使用ResultSet查询SQL语句
HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。
问答区域
删除提问已经提交成功,正在审核, 谢谢.
回复提问已经提交成功,正在审核, 谢谢.
2023-01-09
练习
苏洛苡
关于
JAVA 中级-JDBC-增、删、改
的提问
问题
截图
代码
异常
练习
package com.company.test;
import java.sql.SQLException;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
public class Practicetwo {
public static void execute(String sql) {
try {
Class.forName("com.mysql.jdbc.Driver");
}catch(Exception e) {
e.printStackTrace();
}
Connection c = null;
Statement s = null;
try {
c = DriverManager.getConnection("jdbc:mysql://localhost:3306/how2java?characterEncoding=UTF-8","root","root");
s = c.createStatement();
s.execute(sql);
System.out.println("成功!");
}catch(SQLException e) {
e.printStackTrace();
}catch(Exception e) {
e.printStackTrace();
}finally {
try {
s.close();
}catch(SQLException e) {
e.printStackTrace();
}
try {
c.close();
}catch(SQLException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
String str = "delete from hero where id = 15";
Practicetwo.execute(str);
}
}
2 个答案
LUO萝北
跳转到问题位置
答案时间:2023-05-13
public void Execute(String sql) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai";
String user = "root";
String password = "123456";
Connection conn;
try {
conn = DriverManager.getConnection(url, user, password);
Statement s = conn.createStatement();
s.execute(sql);
} catch (SQLException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
ououo
跳转到问题位置
答案时间:2023-03-19
用了try-with-resource就不用finally块关闭啦
请先登陆
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
删除提问已经提交成功,正在审核, 谢谢.
回复提问已经提交成功,正在审核, 谢谢.
2021-08-24
练习 - 增删改,打卡
莫諾
关于
JAVA 中级-JDBC-增、删、改
的提问
问题
截图
代码
异常
设计一个方法
public static void execute(String sql)
方法接受的参数是SQL语句
public class TestJDBC {
private static String data_path = "jdbc:mysql://127.0.0.1:3306/h2java?characterEncoding=UTF-8";
private static String data_user = "root";
private static String data_pwd = "admin";
public static void main(String[] args) {
String sql = "insert into hero values(null," + "'提莫'"+ "," + 313.0f + "," + 50 + ")";
execute(sql);
}
public static void execute(String sql) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try(Connection c = DriverManager.getConnection(data_path,data_user, data_pwd);
Statement s = c.createStatement();
) {
s.execute(sql);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
1 个答案
星空9975
跳转到问题位置
答案时间:2021-12-19
答案
代码超过 5行,点击查看
package jdbc;
import java.sql.*;
import java.util.Scanner;
public class affair {
public static void main(String[] args) {
connectioned();
try(Connection c=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?" +
"characterEncoding=UTF-8","root","admin");
Statement s=c.createStatement();){
c.setAutoCommit(false);
String sql1="select * from hero";//查询数据库
s.execute(sql1);
ResultSet rs=s.getResultSet();
int sum0=0;//用于计数,每次只计数前十个
int[] content=new int[10];//数组用来存每条获取数据的id
while (rs.next()){
int id=rs.getInt("id");//获取每条数据的id
String name=rs.getString("name");
float hp=rs.getFloat("hp");
int damage=rs.getInt("hp");
sum0++;
if (sum0==11){//当计数到11时,正好是是个数,跳出循环
break;
}else {
content[sum0-1]=id;//把id放入数组
System.out.printf("试图删除第%d个英雄id:%d\t%s\t%f\t%d%n", sum0,id, name, hp, damage);
}
}
boolean judge = true;//用来判断开关
System.out.println("确认删除10个数据吗?");
while (judge==true){
System.out.println("请输入正确的选项!(y/n)");
Scanner sc=new Scanner(System.in);//用于输入
String input=sc.nextLine();
if (input.equals("y")||input.equals("n")){//如果输入的是y或者n就不用循环输入判断了,
judge=false;
}else {
judge=true;
}
if (input.equals("y")){//如果输入的是y,就遍历数组中的id,把它删除
for(int i:content){
connectioned();
try(Connection c1=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?" +
"characterEncoding=UTF-8","root","admin");
Statement s1=c1.createStatement();){
String sql="delete from hero where id="+i;
s1.execute(sql);
}catch (SQLException e){
e.printStackTrace();
}
}
System.out.println("删除成功!");
}
}
}catch (SQLException e){
e.printStackTrace();
}
}
public static void connectioned(){//直接定义一个连接,方便调用
try{
Class.forName("com.mysql.jdbc.Driver");
}catch (ClassNotFoundException e){
e.printStackTrace();
}
}
}
请先登陆
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
删除提问已经提交成功,正在审核, 谢谢.
回复提问已经提交成功,正在审核, 谢谢.
2021-08-21
增、删、改
xuan52pk
关于
JAVA 中级-JDBC-增、删、改
-练习-增 删 改
的提问
问题
截图
代码
异常
用反射,,
package my;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class SqlExcute {
public static SqlExcute Ysql = new SqlExcute();
public static String Ysqladd(Student stu) throws ErrorTest, NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException
{
String[] idStrs =null;
String[] values =null;
String tableName = "";
Class cls = stu.getClass();
if(cls.isAnnotationPresent(YTABLE.class)) {
YTABLE yt = (YTABLE) cls.getAnnotation(YTABLE.class);
tableName = yt.name();
}
Field[] fields = cls.getDeclaredFields();
idStrs = new String[fields.length];
values = new String[fields.length];
for(int i = 0 ; i < fields.length ; i++)
{
String name = fields[i].getName();
idStrs[i] = name;
String getName = AfReflect.getterName(name);
Method m = cls.getMethod(getName);
Object v = m.invoke(stu);
if(v instanceof Boolean)
{
String vs = String.valueOf(v);
Boolean bv = Boolean.valueOf(vs);
String ts = bv ? "1":"0";
values[i] = ts;
}
else {
values[i] =String.valueOf(v);
}
}
String idStr = "";
String value = "";
for(int i = 0 ; i < fields.length ; i ++)
{
idStr += "`" + idStrs[i] + "`";
value += "'" + values[i] + "'";
if( i < fields.length -1 )
{
idStr += ","; value += ",";
}
}
String sql = "INSERT INTO " + tableName + " ( "+ idStr +" ) " +" VALUES " + " ( " +value + " ) ";
System.out.println(sql);
return sql;
}
}
请先登陆
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
删除提问已经提交成功,正在审核, 谢谢.
回复提问已经提交成功,正在审核, 谢谢.
2021-02-18
练习题打卡
991015
关于
JAVA 中级-JDBC-增、删、改
的提问
问题
截图
代码
异常
原本想execute()里多几个参数,1个数据库地址参数,1个数据库用户名参数,1个数据库密码参数。
但是这样又和题目的要不求不符合。
所以最后重新设计成类的方法的形式来运行
import java.sql.DriverManager ;
import java.sql.Connection ;
import java.sql.Statement ;
import java.sql.SQLException ;
public class IDU {
private static String path = "jdbc:mysql://127.0.0.1:3306/htmlserver?characterEncoding=UTF-8" ;
private static String userName = "root" ;
private static String password = "admin" ;
public static void main(String[] args) {
String sql = "insert into hero values(1,'同学1号',313,50)" ;
//"delete from hero where id=1" ;
//"update hero set name = '学霸' where id=1" ;
IDU test = new IDU() ;
test.execute(sql);
}
public void execute(String sql){
try{
Class.forName("com.mysql.jdbc.Driver") ;
System.out.println("数据库驱动加载成功");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
try(
Connection c = DriverManager.getConnection(path,userName,password) ;
Statement s = c.createStatement() ;
){
System.out.println("数据库连接成功\n");
s.execute(sql) ;
System.out.println("命令执行完成");
}catch(SQLException e){
e.printStackTrace();
}
}
}
1 个答案
lh20
跳转到问题位置
答案时间:2021-10-26
代码超过 5行,点击查看
package JDBCTest;
import java.sql.*;
import java.util.Scanner;
import static java.lang.Thread.sleep;
public class test {
public static void main(String[] args) {
try {//加载数据库。
Class.forName("com.mysql.jdbc.Driver");
System.out.println("数据库加载成功!");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
test a = new test();
Scanner b = new Scanner(System.in);
System.out.println("请输入sql语句");
String c = b.nextLine();
a.sqltest(c);
}
public void sqltest(String sql){
//链接数据库,local host:3306端口,test包。root用户,密码:123456
Connection c = null;
try {
c = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?characterEncoding=utf8","root","123456");
System.out.println("数据库连接成功"+c);
} catch (SQLException e) {
e.printStackTrace();
}
Statement statement = null;
try {
statement = c.createStatement();
} catch (SQLException e) {
e.printStackTrace();
}
try {
statement.execute(sql);
System.out.println("数据修改成功!");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
请先登陆
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
删除提问已经提交成功,正在审核, 谢谢.
回复提问已经提交成功,正在审核, 谢谢.
2020-04-19
增、删、改
li_qi_ye
关于
JAVA 中级-JDBC-增、删、改
-答案-增 删 改
的提问
问题
截图
代码
异常
增、删、改
public static void execute(String sql) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try(
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8", "root", "123");
Statement s = c.createStatement();
)
{
s.execute(sql);
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
String insert = "insert into hero values(null, '增加一条数据', 666, 60)";
String update = "update hero set name = '更新' where id = 205";
String delete = "delete from hero where id = 204";
// execute(insert);
// execute(update);
execute(delete);
}
4 个答案
amview
跳转到问题位置
答案时间:2021-01-24
insert into hero values(null,'亚索3',313.0,50)
insert
插入数据
update
修改数据
delete
删除数据
代码超过 5行,点击查看
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class ZengShanGai {
public static void main(String[] args) {
String sql = "insert into hero values(null," + "'亚索3'"+ "," + 313.0f + "," + 50 + ")";
String sql1="update hero set name ='张三' where id =8 ";
String sql2="delete from hero where id =5";
System.out.println(sql);
execute(sql);
execute(sql1);
execute(sql2);
}
public static void execute(String sql) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/javatest?characterEncoding=UTF-8", "root", "admin");
Statement s = c.createStatement();
String str = sql.substring(0, 6);
System.out.println(str);
if (str.equals("insert")) {
System.out.println("插入数据");
s.execute(sql);
}
if (str.equals("update")) {
System.out.println("修改数据");
s.execute(sql);
}
if (str.equals("delete")) {
System.out.println("删除数据");
s.execute(sql);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
搁浅CN
跳转到问题位置
答案时间:2021-01-22
这样
public static void main(String[] args) {
execute("insert into test values(null,1,'萌新','2021年1月22日11:04:29')");
}
群码乱舞
跳转到问题位置
答案时间:2020-07-04
package JDBC;
import java.security.interfaces.RSAKey;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* @author 作者 : 煤小二
* @version 创建时间:2020-7-4 10:52:52
* 类说明 :数据的连接
* 注意: execute(sql):用于对数据库的 增 删 改
* executeQuery(sql) :用于对数据的查询
*/
public class Demo01 {
public static void main(String[] args) {
final String Driver="com.mysql.jdbc.Driver";
final String url="jdbc:mysql://127.0.0.1/how2java?characterEncoding=UTF-8";
final String user="root";
final String password="";
Connection conn=null;
Statement st=null;
ResultSet rs =null;
try {
//1.注册JDBC驱动
Class.forName(Driver);
//2.创建连接对象
conn= DriverManager.getConnection(url,user,password);
//3.预处理
st=conn.createStatement();
//4.执行数据库添加的操作
/*
* String sql="insert into student(stu_name,stu_sex) values('小红','女')";
* st.execute(sql);
*/
//5.数据库查询
/*
* String sql="select * from student"; rs = st.executeQuery(sql); //5.显示查询结果
* while (rs.next()) { int id = rs.getInt("id"); String stu_name =
* rs.getString("stu_name"); String stu_sex=rs.getString("stu_sex");
*
* System.out.print(id+" "); System.out.print(stu_name+" ");
* System.out.print(stu_sex+" "); System.out.println(); }
*/
//6.执行数据库的修改
/*
* String sql="update student set stu_name='小强' where id=2"; st.execute(sql);
*/
//7.执行数据库的删除
String sql="DELETE from student where id=2";
st.execute(sql);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
// 数据库的连接时有限资源,相关操作结束后,养成关闭数据库的好习惯
if (rs !=null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 先关闭Statement
if (st != null)
try {
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 后关闭Connection
if (conn != null)
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
逆风刑云
跳转到问题位置
答案时间:2020-06-04
答案
代码超过 5行,点击查看
public class Test3 {
public static void execute(String sql){
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("数据库驱动加载成功");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
Connection c=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8",
"root",
"admin");
System.out.println("数据库连接成功");
Statement s=c.createStatement();
s.execute(sql);
System.out.println("写入数据成功");
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
execute("insert into hero values(null,"+"'卡莉斯塔'"+","+570+","+69+")");
}
}
请先登陆
回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 20 条以前的提问,请 点击查看
提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
|