惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
爱范儿
爱范儿
J
Java Code Geeks
L
LangChain Blog
V
V2EX
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
博客园 - Franky
Microsoft Azure Blog
Microsoft Azure Blog
Jina AI
Jina AI
Blog — PlanetScale
Blog — PlanetScale
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Cloudflare Blog
博客园 - 司徒正美
B
Blog
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Apple Machine Learning Research
Apple Machine Learning Research
Engineering at Meta
Engineering at Meta
MyScale Blog
MyScale Blog
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog

星空下的YZY

【生活随笔】终于可以试一试new Bing了 指定日期网页自动变灰 【学习记录】微信小程序tabBar与自定义navigationBar踩坑记录 这小小破站(摸鱼)一周年啦 【个人记录参考】Vue3搭建项目 【学习记录】CSS动画 【随笔】将备案接入服务商转为腾讯云 正则表达式 【随笔】模拟退火 【随笔】博弈题基础回顾 live2d-widget(看板娘)修改及部署至服务器 【生活随笔】又是一年226,祝自己生日快乐 【杂记】各类零碎笔记(不定期更新) 友链朋友圈4.X.X前端适配尝试【基于店长Akilar的旧版方案】 Java读写txt文件 Hexo中使用ECharts动态图表尝试 【随笔】通过必应的工具发现别的网站未经允许的转载 【暂不公开】YZY的ACM模板整理-java版 更换Butterfly主题及其美化记录
使用JDBC操作数据库
星空下的YZY · 2022-02-04 · via 星空下的YZY

前言:

JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。这个我之前尝试过,但是时间久了,我也怕自己忘了相关的内容,所以通过本文来回顾🤣

如有错误,欢迎大佬指正😆

【转载说明】本文优先发布于我的个人博客www.226yzy.com ,转载请注明出处并注明作者:星空下的YZY。

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。

下载Mysql数据库驱动

由于Java 连接 MySQL 需要额外的驱动包,你可以通过下面的链接去下载你需要的版本

然后放在你的项目文件里

数据库驱动加载

有了驱动包之后就要进行数据库驱动加载

我当时写的代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13

public static void DatabaseDrivenLoad()
{
try
{
Class.forName("com.mysql.jdbc.Driver");
System.out.println("数据库驱动加载成功");
} catch (ClassNotFoundException e)
{
e.printStackTrace();
System.out.println("数据库驱动加载失败");
}
}

主要就是Class.forName("com.mysql.jdbc.Driver");这一句

数据库连接

数据库驱动加载后就是数据库连接

我当时写的代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

public static void DatabaseConnection()
{
try
{
Conn.con = DriverManager.getConnection(
"jdbc:mysql:"
+ "//127.0.0.1:3306/test12?characterEncoding=utf-8",
"root", "");
System.out.println("数据库连接成功");
} catch (SQLException e)
{
e.printStackTrace();
System.out.println("数据库连接失败,请检查url或用户名及密码");
}
}

其实就是

1
2
String driver = "jdbc:mysql://127.0.0.1:3306/test“;
Connection con = DriverManager.getConnection(driver, "root", “123456");

driver代表数据库URL

root代表数据库账户

123456代表你对应的数据库密码

有中文乱码的问题?

不妨尝试一下在原来的数据库URL后面加上?characterEncoding=utf-8

数据查询

这里会使用到Statement接口ResultSet接口

创建接口对象

1
2
Statement stmt = con.createStatement();
ResultSet res = stmt.executeQuery("select * from user12");

con是前面创建的Connection对象

res将是后续返回结果集的对象

我的使用参考如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
try
{
Statement stmt = Conn.con.createStatement();
ResultSet res = stmt.executeQuery("select * from book12");
while (res.next())
{
String id = res.getString("id");
String name = res.getString("name");
int typeid = res.getInt("typeid");
String writer = res.getString("writer");
String publisher = res.getString("publisher");
double price = res.getDouble("price");
int number = res.getInt("number");
Book book = new Book(id, name, typeid, writer, publisher, price,
number);
Conn.Books.add(book);
}
} catch (Exception e)
{
e.printStackTrace();
System.out.println("数据库书籍数据读取失败");
}

增删改数据

可以使用Statement对象executeUpdata()方法,通过不同的SQL语句实现运行增,删,改操作,返回更新的行数。

例如

1
2
3
String sql = "update user12 set name='" + name + "' where id='" + id
+ "' ";
state.executeUpdate(sql);

最后

暂时就写到这了,如有错误,欢迎大佬指正🤣

欢迎访问我的小破站https://www.226yzy.com/ 或者GitHub版镜像 https://226yzy.github.io/ 或Gitee版镜像https://yzy226.gitee.io/

我的Github:226YZY (星空下的YZY) (github.com)

【转载说明】本文优先发布于我的个人博客www.226yzy.com ,转载请注明出处并注明作者:星空下的YZY。

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 星空下的YZY

打赏

  • 微信

    微信

  • 支付宝

    支付宝