使用jdbc需要的一些条件
- 加载驱动获取连接需要的jar包:
mysql-connnector-java-5.0.8-bin.jar(新版本的连接代码会有些不同) - mysql的版本是:5.6.49
- 使用的集成环境是:Eclipse IDE for Java Developers - 2019-12
- jdk使用的版本:jdk8
- 所用表(user)的代码和表的一些数据(jdbc专栏均用该表做演示)
CREATE TABLE `user` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(30), `password` VARCHAR(30), PRIMARY KEY (`id`) )
增删改操作
package csdn1;
//一、建立与数据库的连接Connection
/*获取连接对象需要的条件:
* url:
数据库所处于的ip localhost或127.0.0.1(本地)
数据库的端口号 3306--mysql专用端口号
数据库名称 mydbs2
编码方式 UTF-8
user:
账号(一般是root)
password:
密码(自己设置的)
*/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import org.junit.Test;
//操作数据库--增删改
public class Jdbc1 {
public void runSql(String sql) {
try {
// 数据库加载驱动
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
String url="jdbc:mysql://localhost:3306/mydbs2?characterEncodeing=UTF-8";
String user="root";
String password="root";
//获取连接对象、Statement对象
try(Connection connection = DriverManager.getConnection(url, user, password);
Statement statement = connection.createStatement();)
{
//增删改语句的两种执行方式
boolean bool = statement.execute(sql);//返回false代表执行增删改,反之为查询
int num = statement.executeUpdate(sql);//返回受到影响的行数,无法用于查询
System.out.println(bool+", "+num);
} catch (SQLException e) {
e.printStackTrace();
}
}
//编写sql语句--单元测试
@Test
public void insert() {
String sql = "insert into user (name,password) values('java','java123')";
Jdbc1 j = new Jdbc1();
j.runSql(sql);
}
@Test
public void update() {
String sql = "update user set name='jim' where name='java'";
Jdbc1 j = new Jdbc1();
j.runSql(sql);
}
@Test
public void delete() {
String sql = "delete from user where name='jim'";
Jdbc1 j = new Jdbc1();
j.runSql(sql);
}
}