数据库记录的插入操作是指在数据库表中插入新的记录,插入操作是通过SQL的INSERT语句完成的,Statement 接口的executeUpdate()方法执行SQL更新语句,该方法返回更新的记录数,返回0表示没有更新任何记录。
案例1:编写SQL语句向shoper表中增加一条新的记录,并通过Statement 接口的executeUpdate()方法执行该SQL语句。
在demo包下新建SqlDemoTest3类。代码如下:
package demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
/**
* @ClassName: SqlDemoTest3
* @Description: Java程序入口main方法
* @author 编程训练营
* @date
*
*/
public class SqlDemoTest3 {
// 定义JDBC加载路径
static String jdbc = "com.mysql.cj.jdbc.Driver";
// 定义MySQL数据库的连接地址
static String mysqlurl = "jdbc:mysql://localhost:3306/shop?serverTimezone=GMT%2B8";
// 定义MySQL数据库的用户名
static String username = "root";
// 定义MySQL数据库的用户名登录密码
static String password = "~123456q";
/**
* @Title: main
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @param args 参数
*
* @return void 返回类型 @throws
* @throws UnsupportedEncodingException
*/
public static void main(String[] args) {
Connection conn = null;
Statement statement = null;
try {
// 加载JDBC驱动
Class.forName(jdbc);
// 连接数据库
conn = DriverManager.getConnection(mysqlurl, username, password);
if (null != conn) {
System.out.println(conn);
String name = "打印机专卖店";
String brief = "打印机专业销售";
// 向shoper表中插入一条记录
String sql = "insert into shoper(id,userId,name,brief,log,shopMoney,status,createDate)"
+ "values('0001','00a','" + name + "','" + brief + "','',0.0,0,'2020-01-09')";
// 实例化Statement对象
statement = conn.createStatement();
// 执行SQL INSERT语句
int row = statement.executeUpdate(sql);
if( row == 1 )
{
System.out.println("shoper表添加记录成功");
}
else
{
System.out.println("shoper表添加记录失败");
}
statement.close();
conn.close();
} else {
System.out.println("数据库连接失败");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}程序使用SQL的INSERT语句在shoper表中插入一条记录,Statement接口的executeUpdate()方法执行SQL的插入语句,如果记录插入成功,会返回插入的记录数,返回0表示没有记录被插入。
程序执行结果如下图所示:
