当前位置: 首页 > news >正文

java数据库操作-cnblog

创建lib目录,填入jar包

选择

image-20241013165606569

libraries添加lib目录

image-20241013165630312

package nb;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;public class JDBCtest {private static final String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf8";
//    private static final String url = "jdbc:mysql://localhost:3306/testweb?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8";private static final String username = "root";private static final String password = "";public static void main(String[] args) {try {Class.forName("com.mysql.cj.jdbc.Driver");Connection connection = DriverManager.getConnection(url,username,password);if (connection != null){System.out.println("数据库链接成功");}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}}
}

image-20241013173426532

mysql -h localhost -u root -p

1 实现对数据库的取值

package nb;import java.sql.*;
import java.util.Date;
import java.util.concurrent.locks.StampedLock;public class JDBCtest {private static final String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf8";private static final String username = "root";private static final String password = "";public static void main(String[] args) {try {Class.forName("com.mysql.cj.jdbc.Driver");Connection connection = DriverManager.getConnection(url, username, password);if (connection != null) {System.out.println("数据库链接成功");}String sql = "SELECT id,number,name,gender,createDt FROM student";Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){int id = resultSet.getInt("id");System.out.println("id:"+id);int number = resultSet.getInt("number");System.out.println("number:"+number);String name = resultSet.getString("name");System.out.println("name:"+name);String gender = resultSet.getString("gender");System.out.println("gender:"+gender);Date createDt = resultSet.getDate("createDt");System.out.println("createDt:"+createDt);}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}}
}

image-20241013181257085

2 注意在结尾关闭数据库

package nb;import java.sql.*;
import java.util.Date;
import java.util.concurrent.locks.StampedLock;public class JDBCtest {private static final String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf8";private static final String username = "root";private static final String password = "";public static void main(String[] args) {try {Class.forName("com.mysql.cj.jdbc.Driver");Connection connection = DriverManager.getConnection(url, username, password);if (connection != null) {System.out.println("数据库链接成功");}String sql = "SELECT id,number,name,gender,createDt FROM student";Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){int id = resultSet.getInt("id");System.out.println("id:"+id);int number = resultSet.getInt("number");System.out.println("number:"+number);String name = resultSet.getString("name");System.out.println("name:"+name);String gender = resultSet.getString("gender");System.out.println("gender:"+gender);Date createDt = resultSet.getDate("createDt");System.out.println("createDt:"+createDt);}resultSet.close();statement.close();connection.close();System.out.println("关闭数据库完成");} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}}
}

image-20241013181450093

3 对数据库进行模糊查询

package nb;import java.sql.*;
import java.util.Date;
import java.util.concurrent.locks.StampedLock;public class JDBCtest {private static final String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf8";private static final String username = "root";private static final String password = "";public static void main(String[] args) {try {Class.forName("com.mysql.cj.jdbc.Driver");Connection connection = DriverManager.getConnection(url, username, password);if (connection != null) {System.out.println("数据库链接成功");}String sql = "SELECT * FROM student where name like '张%'";Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){int id = resultSet.getInt("id");System.out.println("id:"+id);int number = resultSet.getInt("number");System.out.println("number:"+number);String name = resultSet.getString("name");System.out.println("name:"+name);String gender = resultSet.getString("gender");System.out.println("gender:"+gender);Date createDt = resultSet.getDate("createDt");System.out.println("createDt:"+createDt);}resultSet.close();statement.close();connection.close();System.out.println("关闭数据库完成");} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}}
}

查询结果只有一个,关键变换位置在

String sql = “SELECT * FROM student where name like ‘张%’”;

数据库内部一共储存了两个值

image-20241013182117975

image-20241013182126539

4 实现对数据库的增删改查

package nb;import java.sql.*;
import java.util.Date;
import java.util.concurrent.locks.StampedLock;public class JDBCtest {private static final String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf8";private static final String username = "root";private static final String password = "";Connection connection;public void init_Connection(){//初始化链接数据库try {Class.forName("com.mysql.cj.jdbc.Driver");connection = DriverManager.getConnection(url, username, password);if (connection != null) {System.out.println("数据库链接成功");}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}}public void closeConnection(){ //关闭数据库if (connection != null){try {connection.close();System.out.println("数据库成功关闭");}catch (SQLException e){e.printStackTrace();}}}public void showAllData(){try {String sql = "SELECT * FROM student";Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()){int id = resultSet.getInt("id");System.out.println("id:"+id);int number = resultSet.getInt("number");System.out.println("number:"+number);String name = resultSet.getString("name");System.out.println("name:"+name);String gender = resultSet.getString("gender");System.out.println("gender:"+gender);}}catch(SQLException e){e.printStackTrace();}}public void add(int id,int number,String username,String gender){try {String sql = "insert into student values(?,?,?,?)";PreparedStatement statement = connection.prepareStatement(sql);statement.setInt(1,id);statement.setInt(2,number);statement.setString(3,username);statement.setString(4,gender);statement.executeUpdate();System.out.println("添加新同学成功");} catch (SQLException e) {e.printStackTrace();}}public void delete(int id){ //删除指定id的学生try {Statement statement = connection.createStatement();statement.executeUpdate("delete from student where id="+id);System.out.println("删除某成员成功");} catch (SQLException e) {e.printStackTrace();}}public void update(int id,String new_name){String sql = "update student set name = ? where id = ?";try {PreparedStatement preparedStatement = connection.prepareStatement(sql);preparedStatement.setInt(2,id);preparedStatement.setString(1,new_name);preparedStatement.executeUpdate();} catch (SQLException e) {e.printStackTrace();}}public static void main(String[] args) {JDBCtest jdbCtest = new JDBCtest();jdbCtest.init_Connection();jdbCtest.add(4,12233,"王二","男");jdbCtest.delete(4);jdbCtest.update(3,"呃呃");jdbCtest.showAllData();jdbCtest.closeConnection();}
}

http://www.mrgr.cn/news/49669.html

相关文章:

  • 苹果最新论文:LLM只是复杂的模式匹配 而不是真正的逻辑推理
  • 【LeetCode热题100】哈希
  • chattts一步步的记录,先跑起来。
  • 探索嵌入式系统中 STM32 与树莓派的高效通信方式
  • 多线程(三):线程等待获取线程引用线程休眠线程状态
  • Python速成笔记——知识(GUI自动化处理屏幕和按键输出)
  • SQLI LABS | SQLI LABS 靶场初识
  • tkinter库的应用小示例:文本编辑器
  • linux命令之fold
  • Windows 安装Redis(图文详解)
  • python【函数】
  • 如何使用Pandas库处理大型数据集?
  • Qt获取磁盘信息+表格显示
  • 深入探索Spring Cloud Gateway:微服务网关的最佳实践
  • 计算机是如何输入存储输出汉字、图片、音频、视频的
  • Golang | Leetcode Golang题解之第477题汉明距离总和
  • Python | Leetcode Python题解之第477题汉明距离总和
  • 【软件考试】一文学会原码,反码与补码
  • C语言 | Leetcode C语言题解之第477题汉明距离总和
  • Python列表专题:list与in