Primero cree una base de datos y una tabla de base de datos en MySQL:
CREATE DATABASE demo01 CHARSET utf8;
CREATE TABLE demo01(
d_id INT PRIMARY KEY AUTO_INCREMENT,
d_name VARCHAR(30),
hobby VARCHAR(30)
);
Como se muestra en SQLyog, se ha creado:
Luego abra eclipse para crear un nuevo proyecto Java y cree una clase de demostración:
package day05;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.util.Scanner;
/**
* ctrl + n 快速创建项目
* ctrl + + 调节字体
* @author Administrator
* 1、导包
* 2、加载驱动
* 3、创建连接对象
* 4、编写sql创建sql编译器
* 5、执行sql返回结果集
* 6、释放资源
*/
public class Demo01 {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
System.out.println("请输入姓名和爱好:");
//nextLine键盘录入字符串
String uname = sc.nextLine();
String hobby = sc.nextLine();
//1、加载驱动com.mysql.jdbc.Driver
Class.forName("com.mysql.jdbc.Driver");
String user = "root";
String password = "root";
String url = "jdbc:mysql://localhost:3306/db1?characterEncoding=utf8";
//2、获取连接对象 ctrl + 1
Connection conn = DriverManager.getConnection(url, user, password);
//3、通过连接对象conn去创建sql编译器
Statement stat = conn.createStatement();
//4、编写sqlinsert into user values(null,'张三','吃饭');
String sql = "insert into user values(null,'" + uname + "','" + hobby + "')";
//5、执行sql返回结果集 i代表受影响的行数
int i = stat.executeUpdate(sql);
if (i > 0) {
System.out.println("添加成功");
} else {
System.out.println("添加失败");
}
//6、释放资源
stat.close();
conn.close();
}
}
Los resultados de la operación se muestran en la figura:
Ver datos: (Aquí creamos una nueva clase)
package day05;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
/**
* 查询表中所有的数据
* @author Administrator
*
*/
public class Demo02 {
public static void main(String[] args) throws Exception {
//1、加载驱动
Class.forName("com.mysql.jdbc.Driver");
String user = "root";
String password = "root";
String url = "jdbc:mysql://localhost:3306/db1?characterEncoding=utf8";
//2、获取连接对象
Connection conn = DriverManager.getConnection(url, user, password);
//3、编写sql
String sql = "select * from user";
//4、创建sql执行器
Statement stat = conn.createStatement();
//5、执行sql
/**
* 增删改DML executeUpdate方法 int i 代表受影响的行数
* 查询DQL executeQuery方法 ResultSet 是一个特殊的集合
*/
ResultSet rs = stat.executeQuery(sql);
/**
* rs.next()方法 判断是否有下一条数据 有返回true,没有返回false
* rs.getXXX(序号) 获取指定序号的列的值
*/
while(rs.next()) {
System.out.println(rs.getInt(1) + "--" + rs.getString(2)
+ "----" + rs.getString(3));
}
//6、释放资源 先开后关
rs.close();
stat.close();
conn.close();
//TODO 查询功能 删除和修改
}
}
El resultado se muestra en la figura:
Modificar los datos:
package day05;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class demo02 {
public static void main(String[] args) throws Exception {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/demo01?characterEncoding=utf8";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url , user , password );
Statement stat = conn.createStatement();
String sql = "update demo01 set `hobby`='不讲武德' where `d_name` = '马保国'" ;
int i = stat.executeUpdate(sql);
if (i>0) {
System.out.println("修改成功!");
}
else {
System.out.println("修改失败!");
}
}
}
Ver resultados: