第十七章 数据库操作

Win10局域网内文件共享+远程桌面控制保姆级教程(含常见问题解决) 本文提供Win10局域网内文件共享和远程桌面控制的详细教程,包括环境检查、共享文件夹设置、远程桌面连接步骤及常见问题解决方案。通过内置功能实现高效办公协作,提升多设备协同工作效率,特别适合需要频繁传输文件或远程控制场景的专业人士。 阅读详情

 数据库基础  和JDBC概论和常用类和接口就不过多的说了  直接来到 数据库的操作 一开始是在数据库中插入了四个类型  两个int  两个varchar类型   再分别插入  名字   序号   号码   性别   然后再在java中操作增删改查 这几个操作  全部代码如下

package 第十七章;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
 
import com.mysql.cj.jdbc.Driver;
 
public class MysqlDemo1 {
    Connection connection;
    public static void main(String[] args) throws SQLException {
        // TODO Auto-generated method stub
        MysqlDemo1 mysqldemo1 = new MysqlDemo1();//new对象 调用方法
        mysqldemo1.getConnection();
        System.out.println("查询人员数据,结果为:");
        mysqldemo1.selectAll();
        System.out.println("新增人员数据,结果为:");
        mysqldemo1.add(11, "lanyangyang"," 17923412644","nan");
        mysqldemo1.add(12, "meiyangyang"," 17977556644","nv");
        mysqldemo1.add(13, "feiyangyang"," 11971236644","nan");
        mysqldemo1.selectAll();
        System.out.println("查询182开头的数据,结果为:");
        mysqldemo1.obscure();//查询课程表中的数据
        System.out.println("修改指定5位置上的电话号码");
        mysqldemo1.update(5,"13124235300");//修改该位置的数据
        mysqldemo1.selectAll();
        System.out.println("查询性别为nan的数据");
        mysqldemo1.man("nan");
        System.out.println("修改指定10位置上的名字");
        mysqldemo1.updatedate(10,"dashuaige");//修改该位置的数据
        mysqldemo1.selectAll();
        System.out.println("查询179开头的数据,结果为:");
        mysqldemo1.obscure1();//查询课程表中的数据
        mysqldemo1.selectAll();
        System.out.println("删除课程11,12,13");
        mysqldemo1.delete("11");//删除指定位置的数据
        mysqldemo1.delete("12");//删除指定位置的数据
        mysqldemo1.delete("13");//删除指定位置的数据
        mysqldemo1.selectAll();
        System.out.println("查询性别为woman的数据");
        mysqldemo1.man("nv");
    }
    public void  woman(String name  ) throws SQLException {//查询性别为女的数据
        PreparedStatement preparedstatement =connection.prepareStatement("select*from sudent where sex = ?;");
        preparedstatement.setString(1, name);
        ResultSet resultSet =preparedstatement.executeQuery() ;
        while(resultSet.next()) {
            System.out.print(resultSet.getInt("id")+" ");
            System.out.println(resultSet.getString("name"));
            System.out.println(resultSet.getString("tel"));
            System.out.println(resultSet.getString("sex"));
        }
        preparedstatement.close();
    }
    public void delete(String id) throws SQLException {//删除指定位置上的数据   
        PreparedStatement preparedStatement = connection.prepareStatement("delete from sudent where id = ?;");
        preparedStatement.setString(1, id);//
        //第四步  :执行SQL语句
        preparedStatement.executeUpdate();
        //第六步关闭接连释放资源
        preparedStatement.close();
    }
    public void obscure1() throws SQLException {//查询号码为179开头的号码
        PreparedStatement preparedstatement=connection.prepareStatement("select*from sudent where tel like'179%';");
        ResultSet resultSet = preparedstatement.executeQuery();//executeQuery只能用来查询    //新增修改删除都是使用另一种e
        //第五步:遍历结果集
        while(resultSet.next()) {
            System.out.print(resultSet.getInt("id")+" ");
            System.out.println(resultSet.getString("name")+" ");
            System.out.println(resultSet.getString("tel")+" ");
            System.out.println(resultSet.getString("sex")+" ");
        }
        preparedstatement.close();
    }
    public void updatedate(int id,String name) throws SQLException {//修改指定位置上的数据
        PreparedStatement preparedstatement =connection.prepareStatement("update sudent set name=?  where id=? ; ");
        preparedstatement.setString(1, name);
        preparedstatement.setInt(2, id);
        //第四步: 执行SOL语句
        preparedstatement.executeUpdate();
        //第六步: 关闭连接释放资源
        preparedstatement.close();
    }
    public void  man(String name  ) throws SQLException {//查询性别为男的数据
        PreparedStatement preparedstatement =connection.prepareStatement("select*from sudent where sex = ?;");
        preparedstatement.setString(1, name);
        ResultSet resultSet =preparedstatement.executeQuery() ;
        while(resultSet.next()) {
            System.out.print(resultSet.getInt("id")+" ");
            System.out.println(resultSet.getString("name"));
            System.out.println(resultSet.getString("tel"));
            System.out.println(resultSet.getString("sex"));
        }
        preparedstatement.close();
    }
    public void update(int id,String tel) throws SQLException {//修改指定位置上的号码
        PreparedStatement preparedstatement =connection.prepareStatement("update sudent set tel=?  where id=? ; ");//修改语句
        preparedstatement.setString(1, tel);//tel  电话
        preparedstatement.setInt(2, id);//id  序号
        //第四步: 执行SOL语句
        preparedstatement.executeUpdate();
        //第六步: 关闭连接释放资源
        preparedstatement.close();
    }
    public void obscure() throws SQLException {//使用mysql模糊查询来查询以182开头的数据
        PreparedStatement preparedStatement=connection.prepareStatement("select*from sudent where tel like'182%'");//使用的是mysql中的模糊查询语句
        ResultSet resultSet = preparedStatement.executeQuery();//executeQuery只能用来查询    //新增修改删除都是使用另一种e
        //第五步:遍历结果集
        while(resultSet.next()) {使用while循环来遍历表中四个类型
            System.out.print(resultSet.getInt("id")+" ");//id  序号
            System.out.println(resultSet.getString("name"));//name  名字
            System.out.println(resultSet.getString("tel"));//tel //电话
            System.out.println(resultSet.getString("sex"));//sex //性别
        }
    }
    public void add(int id ,String name,String tel , String sex) throws SQLException {//add添加数据
        PreparedStatement preparedStatement=connection.prepareStatement("insert into sudent values (?,?,?,?);");//向mysql数据库中指定的sudent表中添加数据
        preparedStatement.setInt(1, id);//添加id 序号
        preparedStatement.setString(2,name);//添加name//名字
        preparedStatement.setString(3,tel);//添加电话
        preparedStatement.setString(4,sex);//添加性别
        preparedStatement.executeUpdate();
        //第六步关闭接连释放资源
        preparedStatement.close();
    }
public void getConnection () throws SQLException{//注册驱动 连接mysql数据库  并遍历出表中的数据
    //第一步注册驱动
    DriverManager.registerDriver(new Driver());//注册驱动
    //第二步获取连接
    connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/school_java","root","1234");//使java连接mysql数据库然后连接本地服务器  指定数据库和账号密码
}
public void selectAll() throws SQLException {//查询类  查询数据表中的数据
    //第三步:获取statement对象
    PreparedStatement preparedStatement=connection.prepareStatement("select * from sudent;");//查询语句
    //第四步:执行SQL语句返回结果集
    ResultSet resultSet = preparedStatement.executeQuery();//executeQuery只能用来查询    新增修改删除都是使用另一种executeUpdate
    //第五步:遍历结果集
    while(resultSet.next()) {//while循环数据库中的四个类型  id name  tel  sex  分别是 序列  名字  电话号码  和性别
        System.out.print(resultSet.getInt("id")+" ");
        System.out.println(resultSet.getString("name"));
        System.out.println(resultSet.getString("tel"));
        System.out.println(resultSet.getString("sex"));
    }
    //第六步:关闭连接释放资源
    resultSet.close();//关闭连接释放资源
    preparedStatement.close();
    
}
public void close() throws SQLException {
    connection.close();//最后关闭连接释放资源
}
}

 全部代码如上所示  接下来是详细的讲解

连接数据库  

主要是分为六个部分

第一步注册驱动
第二步获取连接
第三步:获取statement对象
第四步:执行SQL语句返回结果集
第五步:遍历结果集
第六步:关闭连接释放资源
然后呢 代码和注解如下

public void getConnection () throws SQLException{//注册驱动 连接mysql数据库  并遍历出表中的数据
    //第一步注册驱动
    DriverManager.registerDriver(new Driver());//注册驱动
    //第二步获取连接
    connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/school_java","root","1234");//使java连接mysql数据库然后连接本地服务器  指定数据库和账号密码
}
public void selectAll() throws SQLException {//查询类  查询数据表中的数据
    //第三步:获取statement对象
    PreparedStatement preparedStatement=connection.prepareStatement("select * from sudent;");//查询语句
    //第四步:执行SQL语句返回结果集
    ResultSet resultSet = preparedStatement.executeQuery();//executeQuery只能用来查询    新增修改删除都是使用另一种executeUpdate
    //第五步:遍历结果集
    while(resultSet.next()) {//while循环数据库中的四个类型  id name  tel  sex  分别是 序列  名字  电话号码  和性别
        System.out.print(resultSet.getInt("id")+" ");
        System.out.println(resultSet.getString("name"));
        System.out.println(resultSet.getString("tel"));
        System.out.println(resultSet.getString("sex"));
    }
    //第六步:关闭连接释放资源
    resultSet.close();//关闭连接释放资源
    preparedStatement.close();
    
}

以上代码是 让java连接数据 然后遍历出指定的表中的内容  然后再主函数中new一个对象然后调用该方法就可以输出表中的内容  

模糊查询 

再是使用mysql数据库中的模糊查询  达到输入开头的号码如:182来查询号码182开头的号码的员工

代码如下

public void obscure() throws SQLException {//使用mysql模糊查询来查询以182开头的数据
        PreparedStatement preparedStatement=connection.prepareStatement("select*from sudent where tel like'182%'");//使用的是mysql中的模糊查询语句
        ResultSet resultSet = preparedStatement.executeQuery();//executeQuery只能用来查询    //新增修改删除都是使用另一种e
        //第五步:遍历结果集
        while(resultSet.next()) {使用while循环来遍历表中四个类型
            System.out.print(resultSet.getInt("id")+" ");//id  序号
            System.out.println(resultSet.getString("name"));//name  名字
            System.out.println(resultSet.getString("tel"));//tel //电话
            System.out.println(resultSet.getString("sex"));//sex //性别
        }
    }
然后再主函数中调用该方法就可以打印输出了

增删改

增删改都是使用mysql数据库中的语句   

主要如下 代码注解

删除
public void delete(String id) throws SQLException {//删除指定位置上的数据   
        PreparedStatement preparedStatement = connection.prepareStatement("delete from sudent where id = ?;");
        preparedStatement.setString(1, id);//
        //第四步  :执行SQL语句
        preparedStatement.executeUpdate();
        //第六步关闭接连释放资源
        preparedStatement.close();
    }
修改
public void updatedate(int id,String name) throws SQLException {//修改指定位置上的数据
        PreparedStatement preparedstatement =connection.prepareStatement("update sudent set name=?  where id=? ; ");
        preparedstatement.setString(1, name);
        preparedstatement.setInt(2, id);
        //第四步: 执行SOL语句
        preparedstatement.executeUpdate();
        //第六步: 关闭连接释放资源
        preparedstatement.close();
    }
添加
public void add(int id ,String name,String tel , String sex) throws SQLException {//add添加数据
        PreparedStatement preparedStatement=connection.prepareStatement("insert into sudent values (?,?,?,?);");//向mysql数据库中指定的sudent表中添加数据
        preparedStatement.setInt(1, id);//添加id 序号
        preparedStatement.setString(2,name);//添加name//名字
        preparedStatement.setString(3,tel);//添加电话
        preparedStatement.setString(4,sex);//添加性别
        preparedStatement.executeUpdate();
        //第六步关闭接连释放资源
        preparedStatement.close();
    }

然后再在主函数中调用就好了  
 

多个linux系统安装到一块硬盘(Kylin+UOS+ubuntu) 之前写过一篇类似的文档,笔者把kylin和UOS安装在一块硬盘上上一篇的文档地址多个linux系统安装到一块硬盘(Kylin+UOS)_银河麒麟系统和uos安装成双系统-优快云博客本次记录的是三个系统到一块硬件上银河麒麟:Kylin-Desktop-V10-SP1-Release-2107-arm64统信:uniontechos-desktop-20-professional-1050-arm64乌班图:ubuntu-22.04.5-live-server-arm64。 阅读详情

相关推荐

OpenClaw记忆插件升级实战:从memory-lancedb-pro安装到AgentSkill封装

向量数据库作为现代AI应用的核心基础设施,通过将非结构化数据转换为高维向量并利用相似度检索实现语义理解。其原理基于嵌入模型生成向量表示,结合近似最近邻搜索算法实现高效查询。这项技术为智能体系统提供了长期记忆和上下文感知能力,显著提升了对话连贯性与任务执行效率。在AI智能体开发领域,向量数据库常用于知识库构建、对话历史管理和个性化推荐等场景。本文聚焦OpenClaw框架中memory-lancedb-pro插件的部署实践,针对**插件加载顺序**和**Apache Arrow依赖**两大常见痛点,通过封装成可

weixin_42525482的博客 638

第十七章数据库操作

和JDBC概论和常用类和接口就不过多的说了 直接来到 数据库的操作 一开始是在数据库中插入了四个类型 两个int 两个varchar类型 再分别插入 名字 序号 号码 性别 然后再在java中操作增删改查 这几个操作 全部代码如下。以上代码是 让java连接数据 然后遍历出指定的表中的内容 然后再主函数中new一个对象然后调用该方法就可以输出表中的内容。再是使用mysql数据库中的模糊查询 达到输入开头的号码如:182来查询号码182开头的号码的员工。

2201_75658999的博客 141

STM32 使用rtthread的DMA 串口发送失败

在一次使用RTthread的DMA 串口发送时,持续性通过DMA 发送串口数据时,偶发发送过程中后续数据包无法正常发送出去,后经查,发现为RT-Thread的串口中断处理有瑕疵,后做出修改。另,为了更方便的排查为题,建议修改。左为修改前,右为修改后。

qq_39294918的博客 1108

Java第十七章数据库操作

本篇文章,主要讲述了,数据库基础,jdbc概述,jdbc中常用的类和接口,数据库操作

好好活就是做有意义的事,做有意义的事就是好好活 267

【Unity Shader】2D模型 3D模型混用的穿模问题(Spine在3D场景中出现前后穿模问题的解决办法)

问题描述: 在3D场景中使用Spine模型(2D), 因为Spine需要像Billboard类似的处理,永远是垂直与相机的, 所以一般情况下2D模型能正常显示且前后的阻挡关系也是没有问题的,如下图所示,一切都很美好.(这里用一个四边形,图中的福字表示2D模型) 可是如果后面蓝色的格子比较高,或者2D角色本身也比较高,那么就会出现模型穿插的问题,如下图所示: 如果吧2D模型竖立起来,前后关系肯定是没有问题的,所以也能避免模型穿插的问题,可是就没有Billboard效果,圆形的福字已经被压扁了,如下图:

Vitens的专栏 4590

软件项目质量管理

识别项目中涉及质量管理的不同角色,如项目经理、质量经理、测试人员等,明确每个角色的职责和任务,包括负责哪些质量管理活动和决策。1、编制软件项目的质量管理计划,包括确定项目的质量标准和要求,以及制定质量控制和质量保证策略等。2、编制软件项目的质量管理计划,包括确定项目的质量标准和要求,以及制定质量控制和质量保证策略等。测试用例表是质量控制过程中的关键工具,确保所有功能和场景都被验证,减少项目中的缺陷。1、理解项目质量管理的基本过程,包括质量计划、质量保证、质量控制和质量改进;明确质量管理活动中的角色和职责。

weixin_51996255的博客 1258
上一篇: 第十四章 Iambda表达式和流处理
下一篇: 第十五章 I/O(输入/输出)
JOSOD
博客等级 码龄4年 52粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值