所用软件
Mysql | SQLyog | IDEA
软件各版本介绍:
Mysql56:v1.1.4
SQLyog:v8.14
IDEA:v2019.3
操作系统:Windows10家庭版
系统版本:20H2
Mysql56:v1.1.4
SQLyog:v8.14
IDEA:v2019.3
操作系统:Windows10家庭版
系统版本:20H2
创建数据库
/*在MySQL中创建一个名称为chapter01的数据库,
然后在该数据库中创建一个users表,SQL语句如下所示*/
CREATE DATABASE jdbc;
USE jdbc;
CREATE TABLE users(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(40),
PASSWORD VARCHAR(40),
email VARCHAR(60),
birthday DATE
)CHARACTER SET utf8 COLLATE utf8_general_ci;
/*数据库和表创建成功后,再向users表中插入3条数据,SQL语句如下所示*/
INSERT INTO users(NAME,PASSWORD,email,birthday)
VALUES('zs','123456','zs@sina.com','1980-12-04');
INSERT INTO users(NAME,PASSWORD,email,birthday)
VALUES('lisi','123456','lisi@sina.com','1981-12-04');
INSERT INTO users(NAME,PASSWORD,email,birthday)
VALUES('wangwu','123456','wangwu@sina.com','1979-12-04');
/*为了查看数据是否添加成功,使用SELECT语句查询users表,SQL语句如下所示*/
SELECT * FROM users;
运行该代码即可
IDEA操作
导包
将该jar包复制到IDEA中项目下的/web/WEBINFO/lib包即可(没有请创建lib包)
创建JDBC工具类[JDBCUtil]
package Utils;
import java.sql.*;
public class JDBCUtil{
//获得数据库连接
public static Connection getConnection() throws Exception{
Statement stmt=null;
ResultSet rs=null;
Connection conn=null;
// 1. 注册数据库的驱动
Class.forName("com.mysql.jdbc.Driver");
// 2.通过DriverManager获取数据库连接
String url = "jdbc:mysql://localhost:3306/jdbc";
String username = "root";//此处是你的数据库账号
String password = "******";//此处是你的数据库密码
conn = DriverManager.getConnection(url, username,
password);
return conn;
}
//释放资源
public static void release(ResultSet rs,Statement statement,Connection conn){
if(rs!=null){
try{
rs.close();
}catch(SQLException e){
e.printStackTrace();
}
rs=null;
}
if(statement!=null){
try{
statement.close();
}catch(SQLException e){
e.printStackTrace();
}
statement=null;
}
if(conn!=null){
try{
conn.close();
}catch(SQLException e){
e.printStackTrace();
}
conn=null;
}
}
public static void release(Statement statement,Connection connection){
if(statement!=null){
try{
statement.close();
}catch(SQLException e){
e.printStackTrace();
}
statement=null;
}
if(connection!=null){
try{
connection.close();
}catch(SQLException e){
e.printStackTrace();
}
connection=null;
}
}
}
创建测试类
package Test;
import Utils.JDBCUtil;
//import Utils.JDBCUtil;
import java.sql.Connection;
import java.sql.PreparedStatement;
public class JDBCTest1 {
public static void main(String[] args) {
Connection connection=null;
PreparedStatement statement=null;
try {
connection = JDBCUtil.getConnection();
// statement=connection.createStatement();
/*
String name="xiaoming";
String password="123456";
String email="xiaoming@sina.com";
String birthday="2022-12-12";
*/
// String sql="insert into users(name,password,email,birthday) values('"+name+"','"+password+"','"+email+"','"+birthday+"')";
// ?为占位符,下方即为填充占位符,1为对第一个占位符进行填充
String sql = "insert into users(name,password,email,birthday) values(?,?,?,?)";
statement = connection.prepareStatement(sql);
//填充占位符
statement.setString(1, "大明");
statement.setString(2, "123");
statement.setString(3, "daming@sina.com");
statement.setString(4, "2021-04-20");
// int n=statment.executeUpdate(sql);
// 获取数据库是否更新,即更新后的数据
int n = statement.executeUpdate();
// 判断:如果n(获取到的数据)大于零,即为添加成功,如果不等于零,即为添加失败。
if (n > 0) {
System.out.println("成功!");
} else {
System.out.println("失败!");
}
}
// 抛出异常
catch (Exception e){
e.printStackTrace();
}
// 释放资源
finally {
JDBCUtil.release(statement,connection);
}
}
}



