jdbc——mysql的增、删、改、查测试
jdbc——mysql的增、删、改、查测试
工具:myeclipse
驱动包:https://dev.mysql.com/downloads/connector/j/5.1.html
加入驱动包后》》
准备数据库和表:
CREATE test IF NOT EXISTS user3
CHARACTER SET charset=utf8;
CREATE TABLE user3
(
id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(20) NOT NULL,
password VARCHAR(32) NOT NULL,
age TINYINT NOT NULL DEFAULT 18,
sex BOOLEAN
);
操作步骤:
1. 加载驱动程序
2. 获得数据库连接
3. 通过数据库连接操作数据库
以下是测试代码:
select.java
package mysql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* jdbc连接mysql数据库
* 查询测试
* @author https://blog.csdn.net/qq_32953185/
*/
public class select {
static final String URL="jdbc:mysql://127.0.0.1:3306/test";
static final String USER="root";
static final String PASSWORD="admin";
public static void main(String[] args) {
try {
//加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
//获得数据库连接
Connection conn = DriverManager.getConnection(URL,USER,PASSWORD);
//通过数据库连接操作数据库
Statement stmt = conn.createStatement();
String sql = "select id,username,password,age,sex from user3;";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next())
{
System.out.println(rs.getInt("id")+","+rs.getString("username")
+","+rs.getString("password")+","+rs.getInt("age")+","+rs.getInt("sex"));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
测试结果:
输出了表的所有记录
insert.java
package mysql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* jdbc连接mysql数据库
* 插入测试
* @author https://blog.csdn.net/qq_32953185/
*/
public class insert {
static final String URL="jdbc:mysql://127.0.0.1:3306/test";
static final String USER="root";
static final String PASSWORD="admin";
public static void main(String[] args) {
try {
//加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
//获得数据库连接
Connection conn = DriverManager.getConnection(URL,USER,PASSWORD);
//通过数据库连接操作数据库
Statement stmt = conn.createStatement();
String sql = "insert into user3 values("+"null,?,?,?,?)";
PreparedStatement ptmt = conn.prepareStatement(sql);
//插入小明的记录
ptmt.setString(1, "小明"); //id
ptmt.setString(2, "12345"); //username
ptmt.setInt(3, 20); //age
ptmt.setInt(4, 1); //sex
ptmt.execute(); //执行
System.out.println("执行完毕!");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
测试结果:
insert了一个小明的记录
update.java
package mysql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
/**
* jdbc连接mysql数据库
* 更新测试
* @author https://blog.csdn.net/qq_32953185/
*/
public class update {
static final String URL="jdbc:mysql://127.0.0.1:3306/test";
static final String USER="root";
static final String PASSWORD="admin";
public static void main(String[] args) {
try {
//加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
//获得数据库连接
Connection conn = DriverManager.getConnection(URL,USER,PASSWORD);
//通过数据库连接操作数据库
Statement stmt = conn.createStatement();
String sql = " update user3 set username=?,password=?,age=?,sex=?"+
" where username=?";
PreparedStatement ptmt = conn.prepareStatement(sql);
//把username为小明改成小日月
ptmt.setString(1, "小日月"); //username
ptmt.setString(2, "54321"); //password
ptmt.setInt(3, 21); //age
ptmt.setInt(4, 1); //sex
ptmt.setString(5, "小明"); //where username=小明
ptmt.execute(); //执行
System.out.println("执行完毕!");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
测试结果:
把小明的username修改成小日月
delete.java
package mysql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
/**
* jdbc连接mysql数据库
* 删除测试
* @author https://blog.csdn.net/qq_32953185/
*/
public class delete {
static final String URL="jdbc:mysql://127.0.0.1:3306/test";
static final String USER="root";
static final String PASSWORD="admin";
public static void main(String[] args) {
try {
//加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
//获得数据库连接
Connection conn = DriverManager.getConnection(URL,USER,PASSWORD);
//通过数据库连接操作数据库
Statement stmt = conn.createStatement();
String sql = " delete from user3"+
" where username=?";
PreparedStatement ptmt = conn.prepareStatement(sql);
//删除小日月的记录
ptmt.setString(1, "小日月"); //name
ptmt.execute(); //执行
System.out.println("执行完毕!");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
测试结果:
把小日月的记录删除了