办公问答网

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 100|回复: 0

Java连接Access数据库改成MySQL连接数据库

[复制链接]

9

主题

12

帖子

30

积分

新手上路

Rank: 1

积分
30
发表于 2023-1-13 12:51:18 | 显示全部楼层 |阅读模式
升级诉求:Java连接Access已经算是过时的产物了,一般作为存储服务的应用在Java界比较常用的还是MySQL,当然还有Oracle数据库。这里要讲的就是连接MySQL数据库了。就是因为有了SQL标准,各大厂商实现SQL语句基本上大同小异,所以我们从Access平稳的切换到MySQL数据库也比较方便快捷,那如何进行Access数据库切换成MySQL数据呢?下文就是指导手册了,如有问题可以联系作者一同探讨哟~
1. 环境准备

这里假设你已经安装好了必要的环境:JDK1.8Access 2016+MySQL 5.7+
Microsoft Access 2016安装教程:https://blog.csdn.net/WeiHao0240/article/details/120672363
Java使用ODBC连接Access数据库:https://blog.csdn.net/WeiHao0240/article/details/120727203
JDK8 连接Access数据库: https://blog.csdn.net/WeiHao0240/article/details/127944521
MySQL8.0和5.7安装教程: https://blog.csdn.net/WeiHao0240/article/details/86908034
2. 下载MySQL连接驱动

官网地址:https://dev.mysql.com/downloads/connector/j/
需要登录即可下载
3. 演示代码

码云地址:https://gitee.com/jack0240/SCS.git可以将源代码下载到自己本地。src就是源码了card.sql 是数据库文件,可以直接导入。Card.xlsx就是导入的数据。mysql-connector-j-8.0.31.jar驱动文件,如果下载不下来官方的可以用这个。
4. 新建数据库和表数据

4.1 新建数据库和表

Navicat创建数据库和表教程: https://blog.csdn.net/WeiHao0240/article/details/100039403右击你的数据库,然后点击新建数据库
这个时候数据库名可以随便取一个。双击刚才新建的数据库,然后右击,点击新建表接下来就是新建表数据了。
4.2 根据Access创建MySQL表数据

首先打开Access数据文件,然后点击设计模式:然后注意下面的1(图片中标1的地方),是主键,对应字段即可,如果没有主键就不用点击。2 (图片中标2的地方)就是对应的字段名了,一定要一一对应上。3 (图片中标3的地方)是类型,也要一一对应上,短文本对应的是varchar。|  Access 数据类型  |   MySQL数据类型   ||--|--||   短文本  |     varchar ||   长文本  |     text   ||    数字    |     float     ||   日期/时间|     datetime  |
表名的话不要乱起,不然的话需要更换很多地方,这时候需要找到你原始连接Access的源代码(全局搜索jdbc:),找到如下配置,可以看到最后一个是Card,那么表名就是它。然后按Ctrl  + S保存:表名输入的就是上面源码的。这时候需要设置数据库不区分大小写了,可以查看参考资料哟~
4.3 导入数据

首先打开Access数据,右击对应的表,然后点击导出将数据到处到Excel文件。文件名可以修改你熟悉的地方,便于查找。然后将Excel文件导入到MySQL表里面了,需要右击表,然后点击导入向导:选择Excel文件:勾选新建好的表:其他的默认即可,直接点击下一步:可以根据自己的需求选择导入模式,这里我们选择追加模式:点击最下面的刷新就可以看到导入的数据了。
5. 修改源代码连接

5.1 修改驱动

首先找到Class.forName关键字:修改如下
    // MySQL 8.0以下版本
    Class.forName("com.mysql.jdbc.Driver");

    // MySQL 8.0及以上版本需要修改如下
    Class.forName("com.mysql.cj.jdbc.Driver");
5.2 修改数据库连接

找到DriverManager.getConnection关键字:注意3306端口号,是你安装数据库的端口号。test是你新建数据库的名称。用户名、密码就是MySQL安装时设置的用户名、密码
// MySQL 8.0以下版本
DriverManager.getConnection("jdbc:mysql://localhost:3306/test","用户名","密码");

// MySQL 8.0及以上
DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC", "用户名","密码");
5.3 修改前后对比

修改前:
修改后:
6. 运行

6.1 使用命令方式

// 编译
javac -cp ".;E:\Code\git\SCS\MySQL\mysql-connector-j-8.0.31.jar" -encoding utf-8 Main.java

// 运行
java -cp ".;E:\Code\git\SCS\MySQL\mysql-connector-j-8.0.31.jar" Main
注意红色方框里面的内容。-cp是指定额外的包进行编译-encoding utf-8 是指定文件编码。
运行截图:
6.2 使用Eclipse运行

一种简单的方式就是将驱动直接放到JDK外部包下面:这种方式就像JDK自带数据库驱动一样,不需要额外的配置,但是一定要放到你安装JDK目录jre\lib\ext目录下哟。接下来的另一个方式就是通用的Eclipse添加外部包的方式了:右击你的项目→Properties→Java Build Path → Libraries → Add JARs,选择驱动即可。然后右击主类,Run As → Java Application
参考资料

Java MySQL 连接教程:https://www.runoob.com/java/java-mysql-connect.htmlMySQL 5.7中文乱码与远程链接问题 https://blog.csdn.net/WeiHao0240/article/details/128166409
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|办公问答网

GMT+8, 2025-4-4 02:01 , Processed in 0.317993 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc. Templated By 【未来科技 www.veikei.com】设计

快速回复 返回顶部 返回列表