下面将介绍如何通过JDBC来对数据库进行增删改查的操作,我们以MySQL为例:
1.连接数据库
private static Connection connectDatabase(){
//连接数据库的url是固定的格式,127.0.0.1是MySQL数据库的地址,test是数据库名
String url = "jdbc:mysql://127.0.0.1/test";
//user是登录数据库的用户名
String user = "root";
//pwd是登录数据库的用户的密码
String pwd = "123";
//声明一个Connection引用名
Connection con = null;
try {
//加载驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//实例化con连接数据库
con = DriverManager.getConnection(url, user, pwd);
//没有产生异常就说明连接成功即输出Success!
System.out.println("Success!");
} catch (ClassNotFoundException e) {
//捕获该异常说明驱动没有加载成功可以到JDBC的安装与配置查看重新配置
System.out.println(e.getMessage()+" NOT FOUND!");
} catch (SQLException e) {
//捕获异常该异常说明连接数据库错误,可能是用户名或密码错误。
System.out.println(e.getMessage());
}
return con;
}
2.向数据库中插入数据
private static int insertData(String name,String sex){
//连接数据库
Connection con = connectDatabase();
//定义插入语句
String sql = "INSERT INTO test_table VALUES('"+name+"','"+sex+"')";
try {
//准备好sql语句
PreparedStatement pstmt = (PreparedStatement)con.prepareStatement(sql);
//定义整型变量存放
int count = pstmt.executeUpdate();
//关闭数据库的链接
con.close();
return count;
} catch (SQLException e) {
// TODO: handle exception
return 0;
}
}
3.查询数据库中的数据
private static String queryData(){
Connection con = connectDatabase();
String sql = "SELECT * FROM test_table";
try {
PreparedStatement pstmt = (PreparedStatement) con.createStatement();
ResultSet rs = pstmt.executeQuery(sql);
if(rs.next()){
String dataBuffer = rs.getString(1);
return dataBuffer;
}
else
return "null";
} catch (SQLException e) {
// TODO: handle exception
return "ERROR!";
}
}
4.修改数据库中的数据
private int dataUpdate(String newname,String ID) {
//连接数据库
Connection con = connectDatabase();
//定义SQL语句
String sql = "UPDATE test_table SET name='" +newname+ "' WHERE id='" + ID + "'";
//定义一个整形变量存放受影响的行数
int i = 0;
PreparedStatement pstmt;
try {
pstmt = (PreparedStatement) con.prepareStatement(sql);
i = pstmt.executeUpdate();
con.close();
return i;
} catch (SQLException e) {
e.printStackTrace();
return -1;
}
}
5.删除数据库中的数据
private int dataDelete(String username) {
Connection con = connectDatabase();
String sql = "DELETE FROM test_table WHERE id='"+userId+"'";
int i = 0;
PreparedStatement pstmt;
try {
pstmt = con.prepareStatement(sql);
i = pstmt.executeUpdate();
System.out.println(i);
pstmt.close();
con.close();
return i;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();//捕获异常打印异常
}
return -1;
}
!!!
上面简单介绍了MySQL数据库和Java的连接和通过Java对数据库进行操作。
!!!