idea连接MySQL数据库

本文介绍了IntelliJ IDEA连接MySQL数据库时遇到的时区问题,原因是MySQL驱动默认使用UTC时区。解决方案是通过修改数据库连接URL,添加参数`serverTimezone=GMT%2B8`来设置为东八区。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

⚡ idea连接MySQL数据库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

原因

时区问题,MySQL驱动默认UTC时区。

解决方案

  1. 修改时区
# 设置全局时区 mysql> set global time_zone = '+8:00';
Query OK, 0 rows affected (0.00 sec) 
# 设置时区为东八区 mysql> set time_zone = '+8:00'; 
Query OK, 0 rows affected (0.00 sec) 
# 刷新权限使设置立即生效 mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%time_zone%';
 +------------------+--------+
 | Variable_name | Value |
 +------------------+--------+
 | system_time_zone | EST |
 | time_zone | +08:00 | 
 +------------------+--------+
 2 rows in set (0.00 sec)

2、在url后添加:?serverTimezone=GMT%2B8
在这里插入图片描述

### IntelliJ IDEA 连接 MySQL 数据库的配置方法 #### 准备工作 在开始之前,需确认已安装并启动 MySQL 数据库服务以及下载 JDBC 驱动程序 (mysql-connector-java.jar)[^1]。 #### 添加 JDBC 驱动到项目中 通过 Maven 或手动方式引入 `mysql-connector-java` 的依赖项。如果采用 Maven,则可在项目的 `pom.xml` 文件中加入如下代码片段: ```xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.30</version> </dependency> ``` 对于非 Maven 项目,可将驱动文件拖入至项目的 `lib` 目录下,并右键点击该 jar 包选择 “Add as Library...”。 #### 创数据源连接 打开 IntelliJ IDEA 后进入 **Database 工具窗口**(可通过菜单栏 View -> Tool Windows -> Database 找到)。点击左上角加号按钮 (+),随后依次展开选项选取 Data Source 下的 MySQL 类型[^2]。 在此界面填写必要的参数字段,比如 Host 地址通常设为 localhost;Port 默认端口应填入 3306;Username 和 Password 则分别对应您的数据库用户名密码组合。另外,在 URL 输入框里按照指定模板输入完整的链接地址字符串形式如 jdbc:mysql://localhost:3306/your_database_name?serverTimezone=UTC[^3]。 完成上述设置之后测试一下新创的数据源能否成功立联系——只需单击 Test Connection 即可验证连通状态是否正常运作。 #### 编写 Java 测试代码访问数据库记录 下面给出一段简单的例子展示怎样利用 PreparedStatement 查询特定条件下的用户信息列出来: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; public class Main { public static void main(String[] args) throws Exception{ String url = "jdbc:mysql://localhost:3306/testdb"; String user = "root"; String password = ""; try(Connection conn = DriverManager.getConnection(url, user, password)){ String sql = "SELECT id,name FROM users WHERE age >= ?"; try(PreparedStatement pstmt = conn.prepareStatement(sql)){ pstmt.setInt(1, 18); ResultSet rs = pstmt.executeQuery(); while(rs.next()){ System.out.println("ID:" + rs.getInt("id")+", Name:"+rs.getString("name")); } }catch(Exception e){ e.printStackTrace(); } } } } ``` 以上即完成了整个流程介绍从环境搭直至实际操作演示部分的内容覆盖全面且条理清晰便于理解掌握[^4]。 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值