概述
Java数据库编程一般可以分为以下几个步骤:
1、使用之前记得要在工程的build path中添加 MySQL-connector-Java 的 jar 包
2、加载和注册驱动程序,com.mysql.jdbc.Driver 为JDBC驱
3、java驱动程序名称 Class.forName("com.mysql.jdbc.Driver");
4、连接数据库
// mysql为驱动程序类型,localhost为数据库服务器IP,这里是本地IP,3306是SQL数据库端口
//myuser 是数据库名称,root 是登录用户名,这里密码为空,所以是“”
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myuser", "root", "");
5、向数据库发送SQL语句,处理结果
// 插入数据的sql语句
String sql = "INSERT INTO staff(name, age, sex,address, depart, worklen,wage)"+ " VALUES ('Tom1', 32, 'M', 'china','Personnel','3','3000')";
// 创建用于执行静态sql语句的Statement对象
st = (Statement) conn.createStatement();
// 执行插入操作的sql语句,并返回插入数据的个数
int count = st.executeUpdate(sql);
6、 关闭数据库连接
// 释放所连接的数据库及资源
st.close();
// 关闭数据库连接
conn.close();
完整的实例代码如下:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class java_test {
// 创建静态全局变量
static Connection conn;
static Statement st;
public static void main(String[] args) {
insert(); // 插入添加记录
update(); // 更新记录数据
delete(); // 删除记录
query(); // 查询记录并显示
}
/* 插入数据记录,并输出插入的数据记录数 */
public static void insert() {
// 首先要获取连接,即连接到数据库
conn = getConnection();
try {
// 插入数据的sql语句
String sql = "INSERT INTO staff(name, age, sex,address, depart, worklen,wage)"
+ " VALUES ('Tom1', 32, 'M', 'china','Personnel','3','3000')";
// 创建用于执行静态sql语句的Statement对象
st = (Statement) conn.createStatement();
// 执行插入操作的sql语句,并返回插入数据的个数
int count = st.executeUpdate(sql);
// 输出插入操作的处理结果
System.out.println("向staff表中插入 " + count + " 条数据");
// 释放所连接的数据库及资源
st.close();
// 关闭数据库连接
conn.close();
} catch (SQLException e) {
System.out.println("插入数据失败" + e.getMessage());
}
}
/* 更新符合要求的记录,并返回更新的记录数目 */
public static void update() {
// 同样先要获取连接,即连接到数据库
conn = getConnection();
try {
// 更新数据的sql语句
String sql = "update staff set wage='2200' where name = 'lucy'";
// 创建用于执行静态sql语句的Statement对象,st属局部变量
st = (Statement) conn.createStatement();
// 执行更新操作的sql语句,返回更新数据的个数
int count = st.executeUpdate(sql);
// 输出更新操作的处理结果
System.out.println("staff表中更新 " + count + " 条数据");
// 释放所连接的数据库及资源
st.close();
// 关闭数据库连接
conn.close();
} catch (SQLException e) {
System.out.println("更新数据失败");
}
}
/* 查询数据库,输出符合要求的记录的情况 */
public static void query() {
// 同样先要获取连接,即连接到数据库
conn = getConnection();
try {
// 查询数据的sql语句
String sql = "select * from staff";
// 创建用于执行静态sql语句的Statement对象,st属局部变量
st = (Statement) conn.createStatement();
// 执行sql查询语句,返回查询数据的结果集
ResultSet rs = st.executeQuery(sql);
System.out.println("最后的查询结果为:");
while (rs.next()) { // 判断是否还有下一个数据
// 根据字段名获取相应的值
String name = rs.getString("name");
int age = rs.getInt("age");
String sex = rs.getString("sex");
String address = rs.getString("address");
String depart = rs.getString("depart");
String worklen = rs.getString("worklen");
String wage = rs.getString("wage");
// 输出查到的记录的各个字段的值
System.out.println(name + " " + age + " " + sex + " " + address
+ " " + depart + " " + worklen + " " + wage);
}
// 释放所连接的数据库及资源
st.close();
conn.close(); // 关闭数据库连接
} catch (SQLException e) {
System.out.println("查询数据失败");
}
}
/* 删除符合要求的记录,输出情况 */
public static void delete() {
// 同样先要获取连接,即连接到数据库
conn = getConnection();
try {
// 删除数据的sql语句
String sql = "delete from staff where name = 'lili'";
// 创建用于执行静态sql语句的Statement对象,st属局部变量
st = (Statement) conn.createStatement();
// 执行sql删除语句,返回删除数据的数量
int count = st.executeUpdate(sql);
// 输出删除操作的处理结果
System.out.println("staff表中删除 " + count + " 条数据n");
// 释放所连接的数据库及资源
st.close();
// 关闭数据库连接
conn.close();
} catch (SQLException e) {
System.out.println("删除数据失败");
}
}
/* 获取数据库连接的函数 */
public static Connection getConnection() {
// 创建用于连接数据库的Connection对象
Connection con = null;
try {
// 加载Mysql数据驱动
Class.forName("com.mysql.jdbc.Driver");
// 创建数据连接
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myuser", "root", "");
} catch (Exception e) {
System.out.println("数据库连接失败" + e.getMessage());
}
// 返回所建立的数据库连接
return con;
}
}
最后
以上就是沉默身影为你收集整理的Java MySQL数据库编程详解的全部内容,希望文章能够帮你解决Java MySQL数据库编程详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复