Java第十七章总结

数据库基础

 SQL语言

1、select 语句

select 语句用于从数据中检索数据。语法如下:

SELECT 搜选字段列表 FROM 数据表名

WHERE 条件表达式 GROUP BY 字段名 HAVING 条件表达式(指定分组的条件)

ORDER BY 字段名[ASC|DESC]

2、insert 语句

insert 语句用于向表中插入新数据。语法如下:

insert into 表名[(字段1,字段2...)]values(属性值1,属性值2);

 3、update 语句

update 语句用于更新数据表中的某些记录。语法如下:

UPDATE 数据表名 SET 字段名=新的字段值 WHERE 条件表达式;

 4、delete 语句

delete 语句用于删除数据。语法如下:

delete from 数据表名 where 条件表达式;

 

JDBC中常用的类和接口

1、 DriverManager 类

       DriverManager 类师JDBC的管理层,用于管理数据库中的驱动程序。在操作指定数据库之前,需要使用Java中Class 类的静态方法forName(String className)加载指定数据库的驱动程序。

2、Connection 接口

      Connection 接口代表与特定的数据库的连接,在连接上下文中执行SOL语句并返回结果。

3、Statement 接口

      Statement 接口用于在已经建立连接的基础上向数据库发送SQL语句。

4、PreparedStatement 接口

       PreparedStatement 接口用来动态地执行SQL语句。通过PreparedStatement 实例执行的动态的SQL语句,将被预编译并能保存到PreparedStatement 实例中,从而可以反复地执行该SQL语句。

5、ResultSet 接口

       ResultSet 接口类似与一个临时表,用来展示存放数据库查询操作所获得的结果。ResultSet 实例具有指定当前数据行的指针,指针开始的位置在第一个记录的前面,通常next()方法可将指针向下移。

数据库操作

        要对数据库表中的数据库进行操作,首先应该建立与数据库的连接。通过JDBC API 中提供的各种各类,可对数据表中的数据进行查找、添加、修改、删除等操作。代码如下:
 

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 JDBC {Connection connection;public static void main(String[] args)throws  SQLException {JDBC jdbc=new JDBC();jdbc.getConnection();System.out.println("查询所有课程,结果为:");jdbc.selectAll();System.out.println("新增4号课程,名为Web");jdbc.add(4,"Web");System.out.println("查询所有课程,结果为:");jdbc.selectAll();System.out.println("修改三课程,名为office");jdbc.update(3,"office");System.out.println("查询所有课程,结果为:");	jdbc.selectAll();	System.out.println("删除4号课程");jdbc.delete(4);System.out.println("查询所有课程,结果为:");jdbc.selectAll();jdbc.close();}//删除课程public void delete(int id) throws SQLException {//第三步:获取statement对象PreparedStatement preparedStatement=connection.prepareStatement("delete from couse where id= ?;");preparedStatement.setInt(1,id);//执行SQL语句返回结果集preparedStatement.executeUpdate();}//修改课程public void update(int id,String name) throws SQLException {//第三步:获取statement对象PreparedStatement preparedStatement=
connection.prepareStatement("update couse set name= ? where id= ?;");preparedStatement.setString(1, name);preparedStatement.setInt(2, id);//第四步: 获取statement对象preparedStatement.executeUpdate();}//添加课程public void add(int id, String name)throws SQLException {//第三步:获取statement对象PreparedStatement preparedStatement=connection.prepareStatement("insert into couse value(?,?);");preparedStatement.setInt(1, id);preparedStatement.setString(2, name);//第四步:执行SQL语句返回结果集preparedStatement.executeUpdate();}public void getConnection()throws SQLException{//第一步注册驱动	DriverManager.registerDriver(new Driver());	//第二步:获取连接		connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/school_java","root","1234");}//查询所有课程public void selectAll()throws SQLException {//第三步:获取statement对象PreparedStatement preparedStatement=connection.prepareStatement("select * from couse;");
//第四步: 执行SQL语句返回结果集ResultSet resultSet=preparedStatement.executeQuery();
//第五步:遍历结果集while(resultSet.next()) {System.out.print(resultSet.getInt("id")+" ");System.out.println(resultSet.getString("name"));}//第六步:关闭连接释放资源resultSet.close();preparedStatement.close();}public void close()throws SQLException {connection.close();}
}

运行结果:

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

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

相关文章

SpringMVC---获取参数

文章目录 传递单参数传递对象传递多个参数参数重命名传递JSON对象直接从 url 中传递参数 省略变量上传文件获取Cookie获取Header设置Session读取Session 传递单参数 RequestMapping("/name")//1. 传递参数//注:传参的时候一定要传递包装类型而非基础类型…

动手学深度学习2 安装环境

pytorch环境安装 1. windows 环境安装2. mac环境安装3. linux环境安装1. 申请云服务器 链接机器--Ubuntu2. 环境配置 4. 不安装环境直接使用colabQA 课程链接: https://www.bilibili.com/video/BV18p4y1h7Dr?p1&vd_sourceeb04c9a33e87ceba9c9a2e5f09752ef8 1.…

Pycharm中如何使用Markdown?只需装这个插件!

一、前言 由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,许多网站都广泛使用Markdown来撰写帮助文档或是用于论坛上发表消息。 如GitHub、Reddit、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge、简书等…

用ChatGPT辅助写个人性化显示结构体数据的类

初衷 我们产品有很多状态信息都持久化到文件中,从而数据库意外中断后重启还能知道之前的状态信息。文件中数据是按c struct直接灌进去的,所以我想写个通用类用来漂亮的显示文件内容。 大概如此这般展示: STAT_FILEHD size: 0x258 +0 version=64 +4 filetype=b\x07…

嵌入式linux面试题分享

系统相关 以下是一些嵌入式Linux面试题,并附有答案: 题目:什么是嵌入式Linux? 答案:嵌入式Linux是一种针对嵌入式系统的Linux操作系统。它具有轻量级、可定制和可扩展性强的特点,适用于各种嵌入式设备&am…

spring之基于注解管理Bean

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

[每周一更]-(第28期):Windows服务自启动设置

需求:有时候有些软件,想在开机后自启动,但是由于屏幕需要录入密码,但是普通开机启动的应用,需要在录入密码进去Windows界面才能启动,但是 不用解锁屏幕但需要运行的应用还是有的,比如一些软件远…

《每天一分钟学习C语言·二》

1、当使用const关键字变量就无法修改可当常量来用。常量指针不能通过指针来改变变量的值,但可以通过其他引用来改变变量的值常量指针也可以指向其他变量地址,如 int a5,b6; const int *pt &a; *pt6; //错误 a6; //正确 pt&b; //正确指针常量指…

互式流程图|BPMN JointJS+ JavaScript 3.7.3 Crack

JointJS 是 JavaScript 图表库为卓越的 UI 提供支持 使用经过验证的库快速、自信地构建高级视觉和无代码/低代码应用程序。 赋能全球行业领导者 使用 JointJS 构建的图表 一个库,‍无限 UI 选项 直接在您的应用程序中享受交互式流程图、BPMN 和其他图表工作室。利用…

7000字详解ERP管理系统!

在当今竞争激烈的商业世界中,中小企业不仅需要保持灵活性,更需要高效管理企业资源。 你可能听说过ERP系统,但它究竟是什么?它为何成为中小企业管理的不二选择?又是如何助力中小企业整合资源、提升效率,并在…

C 库函数 - asctime()

描述 C 库函数 char *asctime(const struct tm *timeptr) 返回一个指向字符串的指针,它代表了结构 struct timeptr 的日期和时间。 声明 下面是 asctime() 函数的声明。 char *asctime(const struct tm *timeptr)参数 timeptr 是指向 tm 结构的指针&#xff0c…

使用极狐gitlab初始化导入本地项目

本地有项目的情况需要同步到极狐gitlab上 第一步: 在gitlab上新创建一个空项目 ⚠️⚠️⚠️这里需要注意红色圈住的地方一定不要选择,因为选择了这个后续会有不必要的麻烦 第二步 在本地项目中删除原来的.git文件(这一步如果是新项目可以忽略&#…

VMware网络设置+Linux网卡设置+主机与虚拟机相互Ping通

目录 1. Linux网卡设置 1.1 ifcfg-ens33 1.2 修改配置信息 1.3 添加IP信息 1.4 重启网卡、关闭防火墙 2. VMware网络设置 3. 设置主机网络 4. 测试主机与虚拟机网络是否连通 4.1 主机ping虚拟机的Linux 4.2 虚拟机Linux来ping主机 1. Linux网卡设置 刚开始安装的Lin…

〖Python网络爬虫实战㊸〗- 极验滑块介绍(五)

订阅:新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列(零基础小白搬砖逆袭) 说明:本专栏持续更新中,订阅本专栏前必读关于专栏〖Python网络爬虫实战〗转为付费专栏的订阅说明作者&#xff1…

ubuntu x86环境创建armv8 ubuntu2004 64位docker服务器

在arm编译速度慢,运行vscode远程耗费资源,因此尝试在ubuntu服务器上搭建armv8 64位编译环境,过程很简单,记录如下 一、安装qemu解释器 # 宿主机安装解释器和时区设置 sudo apt install -y qemu-user-static tzdata # 重启docker…

Java对接腾讯多人音视频房间回调接口示例

在前面我们已经对接好了腾讯多人音视频房间相关内容:Java对接腾讯多人音视频房间示例 为了完善业务逻辑,我们还需要对接它的一些回调接口 官方文档地址 主要就下面这些 这里因为比较简单直接上代码 里面有些工具类和上一章一样这里就没贴,需要…

React面试题:React.Component和React.PureComponent的区别?

回答思路:什么是PureComponent-->Component更新过程-->PureComponent更新过程-->PureComponent的优点 什么是PureComponent:pure:纯净的,即为纯组件,可以用来优化React程序,减少render函数执行的…

想要将numpyarray转换成Image出错,ValueError: Could not save to PNG for display

问题再现 cams_H 是一个形状为torch.size([1, 7, 7, 3])的tensor, 它经历了以下语句: cams_H_np cams_H.numpy() cams_H_img Image.fromarray(cams_H_np[0, :, :, 0]) cams_H_img报错了: ---------------------------------------------…

如何安装运行Wagtail并结合cpolar内网穿透实现公网访问网站界面

文章目录 前言1. 安装并运行Wagtail1.1 创建并激活虚拟环境 2. 安装cpolar内网穿透工具3. 实现Wagtail公网访问4. 固定的Wagtail公网地址 前言 Wagtail是一个用Python编写的开源CMS,建立在Django Web框架上。Wagtail 是一个基于 Django 的开源内容管理系统&#xf…

pycharm或anaconda安装第三方库的办法

https://pypi.tuna.tsinghua.edu.cn/simple/ ctrlF 查找seaborn 我是直接去镜像网站或官方网站找要下载安装的包,手动下载下来,再手动安装会比较快。 输入 pip install D:\Downloads\seaborn-0.9.0-py3-none-any.whl 回车,就很酸爽&#xff…