Java项目中,常用的SQL语句

news2024/11/16 5:58:35

 常用的命令:

1.数据的增删改查

1.插入数据(进行注册)

语法 1:

--第一种:
INSERT INTO 表名(列名 1,列名 2, …) ;
insert into tablename(member1,member3) valuse('',''); 

--第二种:
INSERT INTO 表名 VALUES(值 1,值 2,…);
insert into tablename values( , , , ...);

2.修改数据

UPDATE 表名 SET 列名 1=值 1, … 列名 n=值 n [WHERE 条件];
--小写
update tablename set name='', password = '' where id = 1;
--上面修改语句如果没有那个where id = 1,他会修改所有的表中的数据,慎重

3.删除数据

--语法 1:
DELETE FROM 表名 [WHERE 条件];
--小写
delete from tablename [where 条件 ]

4.查找

--查询表
SELECT * FROM 表名;  --会查询表中的所有数据
--查询表中特定字段(id = 3条件下)
select name from 表名 where id = 3;

2.sql语句在项目中的使用

在学习通项目中对账号的处理

注册:插入用户数据

登录:查询用户信息

注销:删除用户信息

忘记密码:修改用户信息

 1.注册(增加)

 public static boolean insertUser(User user) {
        Connection connection = null;
        PreparedStatement preparedStatement =null;
        ResultSet resultSet = null;

        try {
            //获取数据库连接
            connection = JDBCUtil.getJdbcUtil().getConnection();
            //准备数据库语句
            String sql = "insert into users values (null,?,?,?,?)";
            preparedStatement = connection.prepareStatement(sql);
            preparedStatement.setString(1, user.getName());
            preparedStatement.setString(2, user.getPassWord());
            preparedStatement.setString(3,user.getMail());
            preparedStatement.setInt(4,user.getSign());
            preparedStatement.executeUpdate(); //这里返回的处理的数据,可以通过判断这个
//返回值是否大于0,判断是否出错,其中这里的结果集为null,只有查询时用到这个
        

        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }finally {
            JDBCUtil.getJdbcUtil().closeConnection(resultSet,preparedStatement,connection);
        }

        return true;
    }

在这其中,增加,修改,删除都是只需要改一下sql语句就可以了

2.查询

 public static User queryUser(String name,String mail){
        Connection connection = null;
        PreparedStatement preparedStatement =null;
        ResultSet resultSet = null;

        try {
            //获取数据库连接
            connection = JDBCUtil.getJdbcUtil().getConnection();
            //准备数据库语句
            String sql = "select *from users where account = ? and mail = ?";
            preparedStatement = connection.prepareStatement(sql);
            preparedStatement.setString(1,name);
            preparedStatement.setString(2,mail);
            //结果集,查询出来
            resultSet = preparedStatement.executeQuery();
            //查询语句,返回查找值
            //这里因为我一直查询出来只有一个对象,所以只进行返回一个User,否则应该返回一个集合
//使用结果集循环resultSet.next(),找出所有对象
            User user = new User();
            user.setName(resultSet.getString(2));
            user.setPassWord(resultSet.getString(3));
            user.setMail(resultSet.getString(4));
            user.setSign(resultSet.getInt(5));
            return user;


        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.getJdbcUtil().closeConnection(resultSet,preparedStatement,connection);
        }

        return null;

    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1920308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux工具篇:yum

前言: 目录 前言: Linux 软件包管理器 yum yum是什么? 什么是软件包? Linux系统(centos)的生态: 那我的yum是怎么找到对应的软件呢? 关于 rzsz yum查看软件包(安装…

Python task

def wordcount(text):# 将文本分割成单词列表,并转换为小写words text.lower().split()# 初始化一个空字典用于存储单词计数word_counts {}# 遍历单词列表中的每个单词for word in words:# 如果单词在字典中,则计数加1,否则将单词加入字典并…

配置sublime的中的C++编译器(.sublime-build),实现C++20在sublime中的使用,小白教程

一,前期准备 首先我们需要准备一下 C 环境,当然如果你觉得你当前的C环境配置好了,并且C的版本也能完成您日常的使用需求,您可以使用下面两条命令对C的版本进行查询 g -vg --version通过返回的版本简单的判断是否能解决您的需求&…

Delta的最新更新可让iPad用户同时模拟多款游戏

Delta iOS 应用程序发布了一个更新,引入了复古 游戏模拟器重新设计的标识,以及原生 iPad 支持,允许用户同时玩多个 游戏。 据 Delta 开发者 Riley Testut 称,欧盟用户可以立即通过AltStore PAL 下载更新,但其他用户则需…

Tomcat多实例

一、Tomcat多实例 Tomcat多实例是指在同一台服务器上运行多个独立的tomcat实例,每个tomcat实例都具有独立的配置文件、日志文件、应用程序和端口,通过配置不同的端口和文件目录,可以实现同时运行多个独立的Tomcat服务器,每个服务…

成为编程大佬!!----->数据结构与算法(2)——顺序表!!

前言:线性表是数据结构与算法的重中之重,所有具有线性逻辑结构的数据结构,都能称为线性表。这篇文章我们先来讨论线性表中的顺序表,顺序表和线性表都是后续实现栈,树,串和图等等结构的重要基础。 目录 ❀简…

YOLOv10改进 | 主干/Backbone篇 | 轻量级网络ShuffleNetV1(附代码+修改教程)

一、本文内容 本文给大家带来的改进内容是ShuffleNetV1,这是一种为移动设备设计的高效CNN架构。它通过使用点群卷积和通道混洗等操作,减少了计算成本,同时保持了准确性,通过这些技术,ShuffleNet在降低计算复杂度的同时…

yolov8、RTDETR无法使用多个GPU训练

yolov8、RTDETR无法使用多个GPU训练 网上看了好多解决方法: 什么命令行 CUDA_VISIBLE_DEVICES0,1 python train.py 环境变量都不行 最后找到解决方案:在ultralytics/engine/trainer.py 中的第246行 将 self.model DDP(self.model, device_ids[RANK])…

Web 应用程序开发的前沿:2024 年会发生什么??

Web 应用程序开发是发展最快的领域之一,令人印象深刻地改变了网络空间的给定面貌。 随着我们进入 2024 年,许多进步趋势和技术正在出现,它们整合了开发人员和商人探索他们才能的新领域。 这篇博客将介绍有关创建 Web 应用程序的最新趋势的想法…

记一次若依框架和Springboot常见报错的实战漏洞挖掘

目录 前言 本次测实战利用图​ 1.判段系统框架 2.登录页面功能点测试 2.1 弱口令 2.2 webpack泄露信息判断 2.3 未授权接口信息发现 3.进一步测试发现新的若依测试点 3.1 默认弱口令 3.2 历史漏洞 4.访问8080端口发现spring经典爆粗 4.1 druid弱口令 4.2 SwaggerU…

牛顿力学和拉格朗日力学求解atwood machine问题对比

一个半径为 R R R、转动惯量为 I I I 的圆盘。绳子与圆盘无滑动,质量 m 2 m_2 m2​ 的物体在重力 g g g 作用下下坠,带动质量 m 1 m_1 m1​ 的物体上升。求 m 1 m_1 m1​和 m 2 m_2 m2​ 的加速度 a a a。 牛顿力学方法 对质量 m 1 m_1 m1​ 和 …

攻防世界(PHP过滤器过滤)file_include

转换过滤器官方文档:https://www.php.net/manual/zh/filters.convert.php#filters.convert.iconv 这道题因为convert.base64-encode被过滤掉了,所以使用convert.iconv.*过滤器 在激活 iconv 的前提下可以使用 convert.iconv.* 压缩过滤器, 等…

Jmeter多用户登录操作实战

在使用Jmeter性能测试时,首先要解决的问题恐怕就会并发压测和多用登录的问题.今天就一篇文章讲清楚这两个问题的解决方案: 一.多并发压测如何配置线程? (1)同时并发:设置线程组、执行时间、循环次数,这种方式可以控制接口请求的…

Axure-黑马

Axure-黑马 编辑时间2024/7/12 来源:B站黑马程序员 需求其他根据:visio,墨刀 Axure介绍 Axure RP是美国Axure Software Solution给公司出品的一款快速原型大的软件,一般来说使用者会称他为Axure 应用场景 拉投资使用 给项目团…

(自用)高并发实现高效内存管理

高并发下传统方式的弊端 C语言常用的内存操作函数 C下采用new进行内存分配,delete进行内存释放。 弊端一 分配内存需要进入内核态,总分配大小不变的情况下,多次分配较小的内存导致了变态频繁,降低系统效率. 弊端二 弊端三 情形…

LayoutLMv2:视觉丰富文档理解的多模态预训练

文本和布局的预训练由于其有效的模型架构和大规模未标记扫描/数字出生文档的优势,在各种视觉丰富的文档理解任务中被证明是有效的。我们提出了具有新的预训练任务的LayoutLMv2架构,以在单个多模态框架中对文本、布局和图像之间的交互进行建模。具体而言&…

JVM:SpringBoot TomcatEmbeddedWebappClassLoader

文章目录 一、介绍二、SpringBoot中TomcatEmbeddedWebappClassLoader与LaunchedURLClassLoader的关系 一、介绍 TomcatEmbeddedWebappClassLoader 是 Spring Boot 在其内嵌 Tomcat 容器中使用的一个类加载器(ClassLoader)。在 Spring Boot 应用中&#…

【漏洞复现】方正全媒体采编系统——binary.do——SQL注入

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 方正全媒体采编系统(FZMediaEditor)是一…

华为交换机如何恢复出厂设置

华为交换机如何恢复出厂设置 用consol线连接交换机的consol口和笔记本相连打开securt-CRT软件,CRT软件设置如下图: 3.reset save然后输入Y 4.重启交换机 重启等待两分钟左右

数据结构:链表相关题目

链表反转 LeetCode地址:LCR 024. 反转链表 - 力扣(LeetCode) 头插法: class Solution {public ListNode reverseList(ListNode head) {ListNode h1 new ListNode(-1);while(head!null){ListNode index new ListNode(head.val…