JDBC连接数据库(MySQL)教程(包含可能出错的问题)

阅读提示:这篇文章关于Mysql的知识涉及到的不是很多,如果有需要我改天专门写一篇详细的关于mysql的文章,当然点进来的人大部分肯定是了解过mysql的。

一、准备工作(驱动包)

1.1

下载IntelliJ IDEA(主要用于Java开发),用其他软件也是可以的。

1.2

下载MySQL(关系型数据库管理系统),其它也适用(如Navicat……)。

1.3创建数据库

因为我们要使用jdbc连接数据库,所以首先要创建自己的数据库,其实我觉得看到这里的人应该都会这些,不过为了详细一点,我就简单说一下。

  • 创建数据库,下面me_one是我数据库名
create database me_one;    
  • 在数据库下创建数据表(one_test)
create table one_test(id int,name varchar(5));
  • 添加数据

 insert into one_test(id,name)values('1','李莉');

//差不多了,就简单写一点.想了解的就去查资料。

1.4准备驱动jar包。

后面我将详细说明如何准备驱动jar包:

1、打开Mysql,点击下载

2、在下载的页面滑到最后,点击下图这个

3、进入的页面是这样的,然后点击涂黄色的地方

4、点击红色圈出的地方

5、选择版本,点击下载(注意版本问题)

//注意这里有很多人因为版本原因而代码运行不成功,为了运行成功我们可以登录MySQL查看版本信息。

6、解压就可以了

//家人们突然感觉我要写的东西还挺多的(-_-)``,不知道你们需不需要图片,我感觉图片还挺直观的。

1.5创建项目

1)建项目,同时会生成与项目名相同的模块。

2)在jdbc_one下建一个目录(lib),将驱动包放在这下面(ctrl+c,ctrl+v)

3)右击驱动包,添加为库(Add as library),选择生效范围

4)在src中创建一个类(用于写代码的)

二、代码及结果

必要的解释也是放在里面了

import java.sql.DriverManager;  //用于管理 JDBC 驱动,获取数据库连接。
import java.sql.Connection; //表示与数据库的连接。
import java.sql.Statement;  //用于执行 SQL 语句。public class jdbcDemo {public static void main(String[] args)throws Exception{ //表示可能抛出异常(如数据库连接失败、SQL 语句错误等)// 1、注册驱动// 如果是 MySQL 5.x,可以使用 com.mysql.jdbc.Driver。//Class.forName("com.mysql.jdbc.Driver");//MySQL 8.x 及以上版本的驱动类名用下面这个Class.forName("com.mysql.cj.jdbc.Driver");//2、获取链接String url="jdbc:mysql://127.0.0.1:3306/me_one";    //me_one是我数据库名//或者String url="jdbc:mysql://localhost:3306/me_one";String username="root";String password="";  //这是你上MySQL的密码//通过驱动管理器获取数据库连接,返回一个 Connection 对象Connection con= DriverManager.getConnection(url,username,password);   //conn是返回值//3、定义sql//定义了一条插入数据的 SQL 语句String sql="insert into one_test(id,name) values(3,'王桑')";//4、获取sql的对象Statement//用于执行静态 SQL 语句并返回结果Statement stmt =con.createStatement();//5、执行sql语句//执行 SQL 语句(这里是插入操作),并返回受影响的行数。int count=stmt.executeUpdate(sql);//打印System.out.println(count);//释放//关闭 Statement 对象,释放资源。stmt.close();//关闭数据库连接,释放资源。con.close();}
}

结果为

再去看一下MySQL中数据的变化

三、可能的问题

1)一般都是jar版本的问题,这个我在上面提及到了(1.4),可以登录MySQL查看版本信息。

2)jdk配置,在idea中的项目结构中,在SDK中选择添加。

//如果产生其它的问题,欢迎讨论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/27885.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详细分析KeepAlive的基本知识 并缓存路由(附Demo)

目录 前言1. 基本知识2. Demo2.1 基本2.2 拓展2.3 终极 3. 实战 前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 基本知识推荐阅读:KeepAlive知识点 从实战中学习,源自实战中vue路由的…

AI编程,常见的AI编程工具有哪些?如何用AI编程做一个简单的小软件?

随着AI的快速发展,编程不再是专业程序员的专属技能,而逐渐成为一种普通人也能掌握的工具。 如今,即使没有编程基础,也可以通过几种方式轻松入门AI编程,包括直接使用大语言模型进行编程、借助特定的AI软件进行可视化编程…

探秘 Linux 系统编程:进程地址空间的奇妙世界

亲爱的读者朋友们😃,此文开启知识盛宴与思想碰撞🎉。 快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。 在 Linux 系统编程的领域里,进程地址空间可是个相当重要的…

2025-03-04 学习记录--C/C++-PTA 习题5-5 使用函数统计指定数字的个数

合抱之木&#xff0c;生于毫末&#xff1b;九层之台&#xff0c;起于累土&#xff1b;千里之行&#xff0c;始于足下。&#x1f4aa;&#x1f3fb; 一、题目描述 ⭐️ 二、代码&#xff08;C语言&#xff09;⭐️ #include <stdio.h>int CountDigit( int number, int di…

25年第四本【认知觉醒】

《认知觉醒》&#xff1a;一场与大脑的深度谈判 在信息爆炸的焦虑时代&#xff0c;我们像被抛入湍流的溺水者&#xff0c;拼命抓取各种自我提升的浮木&#xff0c;却在知识的漩涡中越陷越深。这不是一本简单的成功学指南&#xff0c;而是一场关于人类认知系统的深度对话&#…

汽车视频智能包装创作解决方案,让旅途记忆一键升级为影视级大片

在智能汽车时代&#xff0c;行车记录已不再是简单的影像留存&#xff0c;而是承载情感与创意的载体。美摄科技依托20余年视音频领域技术积累&#xff0c;推出汽车视频智能包装创作解决方案&#xff0c;以AI驱动影像处理与艺术创作&#xff0c;重新定义车载视频体验&#xff0c;…

DeepSeek 智慧城市应用:交通流量预测(918)

**摘要&#xff1a;**本文探讨了利用 DeepSeek 技术框架解决城市交通流量预测问题的方法&#xff0c;主要内容包括基于时空图卷积网络&#xff08;ST - GCN&#xff09;的预测模型、多传感器数据融合策略以及实时推理 API 服务的搭建&#xff0c;旨在为智慧城市的交通管理提供高…

如何在随机振动分析中包括缓冲器

总结 在随机振动分析中&#xff0c;准确模拟系统的动态行为对于预测其在随机激励下的响应至关重要。在这种情况下&#xff0c;分立阻尼器&#xff08;如减振器&#xff09;是必不可少的组件&#xff0c;因为它有助于模拟实际系统中的能量耗散机制。通过将离散阻尼器集成到模型…

python3.13安装教程【2025】python3.13超详细图文教程(包含安装包)

文章目录 前言一、python3.13安装包下载二、Python 3.13安装步骤三、Python3.13验证 前言 本教程将为你详细介绍 Python 3.13 python3.13安装教程&#xff0c;帮助你顺利搭建起 Python 3.13 开发环境&#xff0c;快速投身于 Python 编程的精彩实践中。 一、python3.13安装包下…

Transformer 代码剖析6 - 位置编码 (pytorch实现)

一、位置编码的数学原理与设计思想 1.1 核心公式解析 位置编码采用正弦余弦交替编码方案&#xff1a; P E ( p o s , 2 i ) sin ⁡ ( p o s 1000 0 2 i / d m o d e l ) P E ( p o s , 2 i 1 ) cos ⁡ ( p o s 1000 0 2 i / d m o d e l ) PE_{(pos,2i)} \sin\left(\fra…

CF 452A.Eevee(Java实现)

题目分析 输入一个数字-长度&#xff0c;输入一个字符串。判断这个字符串是具体的哪一个单词 思路分析 首先给了长度&#xff0c;那我先判断长度相同的单词&#xff0c;然后再一一对比&#xff0c;如果都能通过&#xff0c;那就输出这个单词 代码 import java.util.*;public …

【监控】使用Prometheus+Grafana搭建服务器运维监控面板(含带BearerToken的Exporter配置)

【监控】使用PrometheusGrafana搭建服务器运维监控面板&#xff08;含带BearerToken的Exporter配置&#xff09; 文章目录 1、Grafana 数据可视化面板2、Prometheus - 收集和存储指标数据3、Exporter - 采集和上报指标数据 1、Grafana 数据可视化面板 Grafana 是一个开源的可视…

ADC采集模块与MCU内置ADC性能对比

2.5V基准电压源&#xff1a; 1. 精度更高&#xff0c;误差更小 ADR03B 具有 0.1% 或更小的初始精度&#xff0c;而 电阻分压方式的误差主要来自电阻的容差&#xff08;通常 1% 或 0.5%&#xff09;。长期稳定性更好&#xff0c;分压电阻容易受到温度、老化的影响&#xff0c;长…

UDP协议(20250303)

1. UDP UDP:用户数据报协议&#xff08;User Datagram Protocol&#xff09;&#xff0c;传输层协议之一&#xff08;UDP&#xff0c;TCP&#xff09; 2. 特性 发送数据时不需要建立链接&#xff0c;节省资源开销不安全不可靠的协议 //一般用在实时性比较高…

基于https虚拟主机配置

一、https介绍 http 明文&#xff0c;80/tcp https 密文&#xff0c;443/tcp 二、安全性保障 1、数据安全性 数据加密 2、数据完整性 3、验证身份的真实性、有效性 三、数据安全性 手段&#xff1a;加密 发送方加密数据&#xff0c;接收方解密数据 对称加密算法 加密、解密数据…

机器学习(五)

一&#xff0c;多类&#xff08;Multiclass&#xff09; 多类是指输出不止有两个输出标签&#xff0c;想要对多个种类进行分类。 Softmax回归算法&#xff1a; Softmax回归算法是Logistic回归在多类问题上的推广&#xff0c;和线性回归一样&#xff0c;将输入的特征与权重进行…

概率论基础概念

前言 本文隶属于专栏《机器学习数学通关指南》&#xff0c;该专栏为笔者原创&#xff0c;引用请注明来源&#xff0c;不足和错误之处请在评论区帮忙指出&#xff0c;谢谢&#xff01; 本专栏目录结构和参考文献请见《机器学习数学通关指南》 正文 &#x1f3b2; 1. 随机事件 …

动漫短剧开发公司,短剧小程序搭建快速上线

在当今快节奏的生活里&#xff0c;人们的娱乐方式愈发多元&#xff0c;而动漫短剧作为新兴娱乐形式&#xff0c;正以独特魅力迅速崛起&#xff0c;成为娱乐市场的耀眼新星。近年来&#xff0c;动漫短剧市场呈爆发式增长&#xff0c;吸引众多创作者与观众目光。 从市场规模来看…

MySQL零基础教程15—简单的表连接(join)

在学习子查询的时候&#xff0c;我们已经感受到了&#xff0c;在一个语句中&#xff0c;通过访问不同表的数据最终获取我们想要的结果这种操作方式&#xff0c;实际上在mysql中&#xff0c;还有更加有趣的一个功能&#xff0c;就是表连接&#xff0c;同样是在查询数据的时候连接…

【AVRCP】深入剖析 AVRCP 命令体系:从单元到特定命令的全面解读

在蓝牙音频 / 视频远程控制规范&#xff08;AVRCP&#xff09;中&#xff0c;丰富的命令体系是实现设备间高效交互的关键。这些命令涵盖了单元命令、通用单元与子单元命令、特定命令等多个层面&#xff0c; 一、支持的单元命令 1.1 单元命令概述 AVRCP中支持的单元命令在设备…