JDBC 操作MySQL创建表
创建要执行的sql
语句
- Statement接口,用来执行静态SQL语句对象
- 把SQL语句发送到数据库中去执行。并返回执行的结果
对于DQL返回查询的结果集
对于DML返回受影响的行数
对于DDL返回0 executeUpdate(String);
执行DML和DDL语句
释放数据资源
为什么要释放资源
Connection连接就相当于Java和到Mysql之间建立管道
连接只连接到数据,Statement 就相当于从数据库又接了一个管道连接Mysql的执行程序
释放资源 就是把管道给撤了
package com.iris.jdbc.ddl;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class CreateTable {
public static void main(String[] args) throws Exception {
Class.forName("com.mysql.cj.jdbc.Driver"); //JAVA1.6之后可以不写此语句,根据开发环境类型而定
// 2. 获取对象
String url = "jdbc:mysql://localhost:3306/jdbc_db?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC"; //url 数据库地址
String user="root"; //user 数据库用户名
String password="......" ; //password 数据库密码
Connection conn = DriverManager.getConnection(url, user, password);
// 3. 编写sql语句
String sql = "create table student(id int, name varchar(50),age int)";
Statement st = conn.createStatement();
//4. 执行sql
int row = st.executeUpdate(sql);
//5. 释放资源
st.close();
conn.close();
System.out.println(row);
}
}
JDBC 操作MySQL(DML)插入数据
package com.iris.jdbc.dml;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class InsertClass {
public static void main(String[] args) {
// 2. 获取对象
String url = "jdbc:mysql://localhost:3306/jdbc_db?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC"; //url 数据库地址
String user="root"; //user 数据库用户名
String password="......" ; //password 数据库密码
Connection conn = null;
Statement st = null;
//try{}catch(Exception e) {} finally {} 异常处理
try {
//加载注册驱动
Class.forName("com.mysql.cj.jdbc.Driver"); //JAVA1.6之后可以不写此语句,根据开发环境类型而定
//连接数据库
conn = DriverManager.getConnection(url, user, password);
// 3.創建SQL语句
String sql = "insert into student values(1,'zs',20)";
st = conn.createStatement();
//4. 执行sql
int row = st.executeUpdate(sql);
System.out.println(row);
}catch(Exception e) {
} finally {
//5. 释放资源
if(st != null) {
try {
st.close();
}catch(Exception e) {
e.printStackTrace(); //打印异常
}
}
if(conn != null) {
try {
conn.close();
}catch(Exception e) {
e.printStackTrace(); //打印异常
}
}
}
}
}