HeidiSQL:MySQL图形化管理工具深度解析
本文还有配套的精品资源,点击获取
简介:HeidiSQL是一款开源的MySQL图形化管理工具,适用于多种数据库系统,如MySQL、MariaDB、SQL Server、PostgreSQL和SQLite。其提供的直观操作界面和丰富的功能简化了数据库操作,包括但不限于创建和编辑表格、数据修改、SQL查询执行、数据库备份与恢复等。本文深入介绍了HeidiSQL的特点、安装和使用方法,以及它在各个数据库系统中的适用性,强调了图形化工具对于提高数据库管理效率的价值。
1. HeidiSQL的介绍与优势
HeidiSQL是一款流行的数据库管理工具,特别适用于那些使用Microsoft SQL Server、MySQL和PostgreSQL的用户。它以其简单直观的界面和丰富的功能特性,帮助数据库管理员和开发者高效地进行数据库操作。
1.1 HeidiSQL的简介
HeidiSQL由Ansgar Becker开发,是一款免费且开源的软件,旨在为开发者提供一个轻量级但功能强大的SQL客户端。它支持批量SQL脚本执行、数据导入导出、数据库架构比较、用户权限管理等多种数据库操作。
1.2 HeidiSQL的优势
HeidiSQL在IT行业受欢迎的原因在于它提供了许多其他数据库客户端没有的优势: - 易用性 :直观的用户界面,即使非专业人士也能快速上手。 - 跨平台 :支持Windows、Linux和macOS,这意味着开发者在不同的操作系统上都能使用相同工具进行数据库操作。 - 性能 :高效的代码执行与数据处理能力。 - 灵活性 :支持多种数据库类型,包括Microsoft SQL Server、MySQL、MariaDB和PostgreSQL。 - 免费开源 :降低了企业成本,也允许社区贡献和改进代码。
随着数据库技术的不断发展,HeidiSQL作为一款强大的GUI工具,它帮助开发者以更高效、直观的方式处理数据库问题,已成为众多开发者不可或缺的工具之一。接下来的章节将详细探讨HeidiSQL的核心功能及其在数据库管理中的应用。
2. SQL GUI工具的功能与便利性
2.1 SQL GUI工具概述
2.1.1 图形化用户界面的特点
图形化用户界面(Graphical User Interface, GUI)是计算机软件中一种允许用户通过图形符号和按钮来操作软件的界面,与命令行界面(CLI)相对。其特点主要包括直观性、易用性和交互性。
- 直观性 :GUI通过视觉元素如图标、菜单、按钮、窗口等提供了与软件交互的方式。用户可以直接看到和选择他们想要进行的操作,而无需记忆复杂的命令或代码。
- 易用性 :GUI界面通常只需要简单的点击和拖拽就能完成复杂的任务。许多应用程序通过提供清晰的指示和可视化的反馈帮助用户了解其操作是否成功。
- 交互性 :用户可以通过键盘、鼠标甚至触摸屏等输入设备与GUI进行交互,获得即时的响应和结果。
GUI在SQL数据库管理工具中同样具有重要地位。相比传统的命令行界面,如MySQL的命令行客户端,SQL GUI工具提供了图形化展示,使得数据库操作对非专业人员更加友好,提高了工作效率,减少了操作出错的可能性。
2.1.2 SQL操作的图形化展示
在SQL GUI工具中,数据库的操作和查询结果可以通过表格、图形等方式直观地展示出来。用户可以轻松地浏览表结构、索引、触发器等数据库对象,执行查询并以图形化的方式查看结果。
图形化展示的优势包括:
- 数据可视化 :复杂的数据可以通过图表、图形等方式可视化呈现,方便用户直观理解数据的趋势和模式。
- 操作简化 :创建表、视图、存储过程等复杂操作通过向导形式辅助用户完成,减少了编写SQL语句的复杂度。
- 即时反馈 :对数据库的任何操作都可以立即得到系统反馈,比如修改数据后,可以实时看到更新后的结果。
2.2 HeidiSQL功能优势分析
2.2.1 用户友好的交互体验
HeidiSQL作为一款专为Windows平台设计的开源SQL客户端工具,其交互体验设计充分考虑了用户的操作习惯和工作效率。HeidiSQL提供了一套简化的用户界面设计,使得数据库连接、查询编辑、数据导入导出等操作变得轻松和直观。
- 简洁的连接管理器 :用户可以方便地添加、编辑和删除数据库连接配置,甚至支持批量操作,极大地提高了数据库的连接管理效率。
- 功能区域清晰 :用户界面清晰地将不同的功能区域划分开,比如查询编辑区、结果展示区、执行日志区等,方便用户快速定位所需信息。
- 快捷键支持 :HeidiSQL支持众多快捷键操作,熟练使用快捷键能大幅提升操作速度,适合专业数据库管理员和开发者。
2.2.2 高效的数据库管理工具特性
HeidiSQL不仅仅提供了基本的数据库连接和查询执行功能,更在效率和便捷性上下了大量功夫,包含了一些高级特性,以支持高效的数据管理。
- 批量数据操作 :允许用户通过一条语句对数据表进行插入、更新、删除操作,大大提高了数据操作的效率。
- 内置脚本编辑器 :支持SQL脚本的编写和执行,并且可以保存为脚本文件,方便重复使用和版本控制。
- 多数据库支持 :除了支持MySQL、MariaDB等常见数据库,还支持PostgreSQL、SQLite和SQL Server,使其成为一款多用途的数据库管理工具。
以下是HeidiSQL中实现高效数据管理的一个典型示例:
-- 插入数据示例
INSERT INTO `example_table` (`column1`, `column2`)
VALUES ('value1', 'value2'),('value3', 'value4');
上述代码使用了批量插入的方法,只需一行SQL语句即可完成多条数据的插入,避免了多次单条插入带来的性能开销。在执行数据操作时,HeidiSQL能够提供实时的进度反馈和执行统计,确保用户对操作的每一步都有清晰的了解。
3. HeidiSQL安装和使用指南
安装和使用一款新的数据库管理工具对许多数据库管理员而言是一项日常任务。然而,对于初学者而言,这可能是令人困惑且复杂的。本章节旨在为读者提供详尽的HeidiSQL安装和使用指南,以确保无论是新手还是经验丰富的数据库管理员,都能顺畅地完成安装并开始使用这一强大的工具。
3.1 HeidiSQL的系统要求与安装步骤
HeidiSQL能够在多种操作系统上运行,包括但不限于Windows,以及在一定条件下支持Linux和macOS。本小节将详细介绍如何在不同的操作系统环境下安装HeidiSQL,并讲解其安装步骤。
3.1.1 支持的操作系统环境
HeidiSQL的官方版本目前主要针对Windows平台,支持Windows 7以及更高版本。对于Linux和macOS用户,可以通过Wine模拟器来运行Windows版本的HeidiSQL,或者在官方论坛和社区中寻找合适的替代方案。
3.1.2 安装过程详解
Windows安装步骤:
- 访问HeidiSQL的官方网站下载最新版本。
- 执行下载的安装文件。
- 依据安装向导提示,选择安装路径(默认通常是
C:Program FilesHeidiSQL
)并确认。 - 选择所需的组件,例如是否安装PDF文档等。
- 完成安装并启动HeidiSQL。
Linux系统下的安装:
- 首先确保系统已安装Wine。
- 通过命令行下载HeidiSQL的Windows安装包。
- 使用Wine运行安装包:
wine heidisql_setup_YYYYMMDD.exe
。 - 按照安装向导完成安装。
macOS环境下的安装:
- 下载HeidiSQL的Windows安装包。
- 利用Parallels或类似的虚拟机软件创建一个Windows环境,然后在该环境中安装HeidiSQL。
- 或者尝试使用兼容层软件,如WineBottler,将安装包在macOS上运行。
注意: 对于非Windows用户,官方不提供直接支持,可能需要自行解决兼容性问题。
3.2 HeidiSQL的基本操作与界面介绍
一旦安装完成,HeidiSQL的用户界面对于理解和使用来说非常重要。本小节将引导用户了解如何连接数据库,并介绍HeidiSQL用户界面的主要组成部分。
3.2.1 连接数据库的配置方法
要连接数据库,用户需要设置正确的连接参数:
- 打开HeidiSQL。
- 点击“新建”按钮,打开“新建数据库连接”窗口。
- 选择数据库类型,例如MySQL、PostgreSQL或SQL Server。
- 在必要字段中填写服务器地址、用户名、密码和其他认证信息。
- 测试连接,确保设置正确无误后,点击“打开”按钮。
3.2.2 用户界面布局和功能区块
HeidiSQL的用户界面是典型的MDI(多文档界面),包含以下主要部分:
- 菜单栏 :提供各种工具和选项。
- 工具栏 :快速访问最常用的命令和操作。
- 树形结构浏览器 :以树形结构展示服务器、数据库及其对象。
- 查询编辑器 :输入和执行SQL语句的地方。
- 结果集窗口 :展示SQL语句的执行结果。
- 状态栏 :显示当前连接状态、警告、信息等。
每个部分都有其特定功能,用户应熟悉这些组件以提高工作效率。
示例代码块:
SELECT * FROM `users`;
逻辑分析:
- 以上是一个简单的SQL查询语句,用于从名为
users
的表中检索所有列和行。 - 在HeidiSQL的查询编辑器中输入此语句并执行,可以验证数据库连接是否成功,并检查用户界面的响应性。
通过对HeidiSQL的系统要求、安装过程和界面布局的深入了解,用户应该能够顺利地安装并开始使用这个工具。在接下来的章节中,我们将深入探讨如何在HeidiSQL中使用SQL语言,以及如何执行数据库的备份与恢复操作。
4. SQL语言在HeidiSQL中的应用
4.1 SQL基础语法回顾
SQL(Structured Query Language)是用于管理和操作关系数据库的标准编程语言。它包括了一系列用于数据查询、插入、更新、删除以及数据库对象创建和修改的命令。理解基础语法是高效使用HeidiSQL的关键。
4.1.1 基本的SQL命令和语句
SQL语言的基础命令包括: SELECT
, INSERT
, UPDATE
, DELETE
, CREATE
, ALTER
, DROP
等。这些命令对于操作数据库来说至关重要。
-- 示例:创建一个新表
CREATE TABLE employees (id INT PRIMARY KEY,first_name VARCHAR(50),last_name VARCHAR(50),position VARCHAR(50),salary DECIMAL(10, 2)
);
在这个例子中,我们创建了一个名为 employees
的表,并指定了几个字段以及它们的数据类型。主键是通过 PRIMARY KEY
约束定义的。
4.1.2 SQL语句的执行与调试
执行SQL语句通常非常简单,只需在HeidiSQL的查询窗口中输入语句,然后执行即可。调试时,可以查看返回的错误信息,以了解执行失败的原因。
4.2 HeidiSQL中的高级SQL操作
HeidiSQL不仅支持基本SQL操作,还集成了高级功能,如复杂的查询构建和优化,以及存储过程和触发器的创建和管理。
4.2.1 复杂查询的构建和优化
在复杂的查询中,可能会涉及多个表的连接、子查询、聚合函数和条件语句。优化查询是提高数据库性能的关键。
-- 示例:连接两个表进行数据查询
SELECT e.first_name, e.last_name, d.department_name
FROM employees e
JOIN departments d ON e.department_id = d.id
WHERE e.salary > 50000;
在这个例子中,我们通过 JOIN
语句连接了 employees
和 departments
两个表,并用 WHERE
语句过滤了结果。
4.2.2 存储过程和触发器的实现
存储过程和触发器允许在数据库层面实现更复杂的业务逻辑。这些对象可以包含多个SQL语句,并通过特定事件自动执行。
-- 示例:创建一个简单的存储过程
DELIMITER //
CREATE PROCEDURE GetHighSalaryEmployees(IN min_salary DECIMAL(10, 2))
BEGINSELECT first_name, last_name, salaryFROM employeesWHERE salary >= min_salary;
END //
DELIMITER ;
此存储过程 GetHighSalaryEmployees
接受一个最小薪资参数,并返回薪资大于或等于该值的所有员工信息。
通过上述介绍,我们可以看到HeidiSQL不仅提供了对基本SQL语句的支持,也具备了处理复杂查询和实现高级数据库对象的能力。这使得HeidiSQL成为数据库管理员和开发者在多个数据库平台操作时的理想选择。在接下来的章节中,我们将继续深入探讨HeidiSQL的其他高级功能,包括跨平台特性、数据库备份与恢复以及扩展管理功能等。
5. HeidiSQL跨平台特性(Windows/Linux/macOS)
5.1 跨平台特性概述
5.1.1 不同操作系统间的兼容性问题
跨平台应用程序开发面临着多样的系统环境和差异化的用户需求。在HeidiSQL的开发过程中,设计团队需要解决不同操作系统间的兼容性问题,以确保软件在Windows、Linux、macOS等平台上运行顺畅。
首先,考虑不同操作系统的文件路径和权限管理差异。Windows使用反斜杠( )作为路径分隔符,而Linux和macOS则使用正斜杠( /
)。针对这一点,HeidiSQL提供了动态路径解析功能,能够自动适应运行平台。
此外,操作系统的进程管理机制和内存管理策略也各不相同。Windows采用较为严格的进程权限模型,而Linux则相对开放。为了确保安全和性能,HeidiSQL在实现时会对不同平台的特性进行深入分析,并利用抽象层来统一调用接口。
5.1.2 跨平台使用的最佳实践
在使用HeidiSQL进行数据库管理工作时,为了获得最佳的跨平台体验,用户可以遵循以下几点最佳实践:
-
统一配置文件格式 :选择跨平台支持良好的配置文件格式,如JSON或XML,确保在不同操作系统间迁移或同步配置时的兼容性和便捷性。
-
环境变量的合理运用 :在不同操作系统中合理设置环境变量,为HeidiSQL的运行提供必要的环境配置,如数据库服务器地址、认证信息等。
-
错误处理与日志 :在进行跨平台操作时,遇到问题通常需要依据日志信息来定位和解决问题。HeidiSQL提供了详细的日志记录功能,用户应养成记录并分析日志的习惯。
5.2 HeidiSQL在不同平台上的特殊操作
5.2.1 Linux系统下的安装与配置
Linux作为一个开源且多样化的操作系统,拥有广泛的用户群体。为了在Linux上安装和配置HeidiSQL,可以采取以下步骤:
-
下载安装包 :首先,根据Linux的发行版从HeidiSQL官方网站下载相应的安装包。Debian及其衍生版用户可以使用
.deb
包,而Red Hat及其衍生版用户应使用.rpm
包。 -
依赖安装 :安装HeidiSQL之前,可能需要预先安装一些依赖包,比如
mono-complete
,这依赖于Linux发行版的具体环境。 -
安装HeidiSQL :安装依赖后,使用包管理器安装下载的包。例如,在Ubuntu上,可以使用
dpkg -i
命令安装.deb
包。 -
配置数据库连接 :安装完毕后,首次启动HeidiSQL时,需要配置数据库连接信息。如果使用本地数据库服务器,确保该服务已在Linux系统中运行且网络配置正确。
-
使用桌面快捷方式 :为了方便使用,可以将HeidiSQL的启动器添加到Linux桌面环境,以便快速访问。
5.2.2 macOS环境下的安装与配置
macOS作为一个广泛应用于个人电脑的操作系统,其用户对软件的易用性和稳定性有较高要求。以下是HeidiSQL在macOS上的安装与配置步骤:
-
下载安装包 :从HeidiSQL官方网站下载
.dmg
格式的安装包。 -
安装软件 :双击下载的
.dmg
文件,并将HeidiSQL应用拖拽到“应用程序”文件夹中以完成安装。 -
配置数据库连接 :初次启动HeidiSQL后,用户将需要输入数据库连接信息。在macOS上,你也可以使用系统偏好设置中的“网络”和“共享”来配置相关的网络服务。
-
集成到Finder :HeidiSQL允许用户设置快捷键,也可以通过右键点击Finder中的文件或文件夹来快速选择数据库连接,极大地方便了数据库操作的便捷性。
为了更深入理解以上过程,我们可以将表格形式列出HeidiSQL在不同操作系统下的差异点,以便用户更好地掌握跨平台使用的策略。下面是一个简化的表格示例:
| 操作系统 | 下载方式 | 安装方式 | 特殊配置项 | 快捷启动方式 | |-----------|------------|------------|--------------|----------------| | Windows | 官网下载 | 双击安装包 | 环境变量配置 | 开始菜单 | | Linux | 官网下载 | 包管理器安装 | 依赖包安装 | 桌面快捷方式 | | macOS | 官网下载 | 拖拽安装 | Finder集成 | 右键菜单 |
通过上述步骤和表格的对比,可以发现HeidiSQL的设计确实满足了跨平台的基本需求,并提供了用户友好的操作体验。在下一节中,我们将深入探讨HeidiSQL跨平台特性中的高级功能和优化技巧。
6. 数据库备份与恢复操作
6.1 数据备份的重要性与策略
6.1.1 备份的类型和选择
在数据库管理中,数据备份是一个至关重要的环节。它确保在发生数据丢失、损坏或安全事件时,可以快速恢复到最近的状态,从而最小化损失。备份通常分为几种类型,包括全备份、增量备份和差异备份。
全备份是指备份数据库中的所有数据,这通常需要较多时间和存储空间,但恢复速度最快。增量备份仅备份自上次备份以来发生变化的数据,适用于存储空间有限或者需要频繁备份的场景。差异备份则备份自上次全备份以来所有变化的数据,它在恢复速度和存储需求之间提供了一个折中方案。
选择合适的备份类型应基于数据的重要性、备份时间窗口、存储资源和恢复时间目标。
6.1.2 定期备份的设置与执行
为了保证数据安全,定期备份是一种常见的预防措施。在HeidiSQL中,可以通过设置任务计划来自动化这一过程。下面是一个使用Windows任务计划程序创建备份任务的基本步骤:
- 打开任务计划程序。
- 创建新任务。
- 设置触发器,定义备份任务的执行时间。
- 在操作中,选择启动程序,指定HeidiSQL的路径和参数,例如使用命令行导出数据库。
- 确保任务具有执行所需的权限。
- 保存并激活任务计划。
6.2 HeidiSQL中的备份与恢复工具使用
6.2.1 HeidiSQL提供的备份功能
HeidiSQL内置了简单的备份工具,允许用户导出整个数据库或选定的表为SQL文件。以下是使用HeidiSQL进行备份的步骤:
- 连接至数据库。
- 在数据库浏览器中,右键点击数据库。
- 选择“导出数据库为SQL文件…”。
- 在弹出的对话框中,选择导出选项,比如是否包含数据或仅结构。
- 指定导出文件的路径和名称。
- 点击“保存”。
HeidiSQL提供了一个友好的用户界面来简化备份过程,但对于复杂的备份需求,建议使用命令行工具或脚本来进行更细粒度的控制。
6.2.2 恢复操作的步骤和注意事项
当需要从备份文件恢复数据时,可以使用HeidiSQL的导入功能。以下是如何执行恢复操作的步骤:
- 在HeidiSQL中创建一个新数据库或选择一个现有数据库。
- 在数据库浏览器中,右键点击数据库。
- 选择“导入SQL文件…”。
- 浏览到备份文件所在位置,并选择文件。
- 确认导入选项,如是否忽略现有表或数据。
- 点击“执行”开始恢复数据。
在执行恢复操作时,一定要注意备份文件的兼容性和完整性。如果备份文件比当前数据库版本旧,那么在高版本数据库上恢复可能会遇到兼容性问题。另外,要确保在执行恢复前,已正确关闭数据库或转移到只读模式以防止数据损坏。
本文还有配套的精品资源,点击获取
简介:HeidiSQL是一款开源的MySQL图形化管理工具,适用于多种数据库系统,如MySQL、MariaDB、SQL Server、PostgreSQL和SQLite。其提供的直观操作界面和丰富的功能简化了数据库操作,包括但不限于创建和编辑表格、数据修改、SQL查询执行、数据库备份与恢复等。本文深入介绍了HeidiSQL的特点、安装和使用方法,以及它在各个数据库系统中的适用性,强调了图形化工具对于提高数据库管理效率的价值。
本文还有配套的精品资源,点击获取
]
相关文章:
HeidiSQL:MySQL图形化管理工具深度解析
本文还有配套的精品资源,点击获取 简介:HeidiSQL是一款开源的MySQL图形化管理工具,适用于多种数据库系统,如MySQL、MariaDB、SQL Server、PostgreSQL和SQLite。其提供的直观操作界面和丰富的功能简化了数据库操作,包…...
【Redis】深入解析Redis缓存机制:全面掌握缓存更新、穿透、雪崩与击穿的终极指南
文章目录 一、Redis缓存机制概述1.1 Redis缓存的基本原理1.2 常见的Redis缓存应用场景 二、缓存更新机制2.1 缓存更新的策略2.2 示例代码:主动更新缓存 三、缓存穿透3.1 缓存穿透的原因3.2 缓解缓存穿透的方法3.3 示例代码:使用布隆过滤器 四、缓存雪崩4…...
Flask使用Celery与多进程管理:优雅处理长时间任务与子进程终止技巧(multiprocessing)(subprocess)
在许多任务处理系统中,我们需要使用异步任务队列来处理繁重的计算或长时间运行的任务,如模型训练。Celery是一个广泛使用的分布式任务队列,而在某些任务中,尤其是涉及到调用独立脚本的场景中,我们需要混合使用multipro…...
【PyTorch】torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
报错说明 torch.distributed.elastic.multiprocessing.errors.ChildFailedError: 报错如图所示 报错分析 该报错是 torch 和 CUDA 版本不兼容导致。 (一般N卡自带的CUDA版本与最新的torch版本相差较大) 解决方案 1.查看自己的CUDA版本 # 查看自己的…...
使用android studio写一个Android的远程通信软件(APP),有通讯的发送和接收消息界面
以下是使用 Android Studio 基于 Java 语言编写一个简单的 Android APP 实现远程通信(这里以 TCP 通信为例)的代码示例,包含基本的通信界面以及发送和接收消息功能。 1. 创建项目 打开 Android Studio,新建一个 Empty Activity …...
突破空间限制!从2D到3D:北大等开源Lift3D,助力精准具身智能操作!
文章链接:https://arxiv.org/pdf/2411.18623 项目链接:https://lift3d-web.github.io/ 亮点直击 提出了Lift3D,通过系统地提升隐式和显式的3D机器人表示,提升2D基础模型,构建一个3D操作策略。 对于隐式3D机器人表示&a…...
Android KEY的哪些事儿
目录 一、APK应用签名 1、什么是APK应用签名? 1.1 目的和作用? 1.2 长什么样子? 2、APK应用签名使用流程 步骤一:如何生成APK应用签名文件? 步骤二:如何集成APK应用签名文件? 步骤三&am…...
李宏毅深度学习-Pytorch Tutorial2
什么是张量? 张量(Tensor)是深度学习和机器学习中一个非常基础且重要的概念。在数学上,张量可以被看作是向量和矩阵的泛化。简单来说,张量是一种多维数组,它可以表示标量(0维)、向量…...
【译】为 SAP 表维护视图 (SM30) 创建选择屏幕
原文标题:Create Selection Screen for SAP Table Maintenance View (SM30) 原文链接: https://www.saphub.com/abap-dictionary/sap-abap-tmg-selection-screen/ 通常,带有单个屏幕的 SAP 表维护视图 (SM30) 会显示表中的所有记录ÿ…...
element Plus中 el-table表头宽度自适应,不换行
在工作中,使用el-table表格进行开发后,遇到了小屏幕显示器上显示表头文字会出现换行展示,比较影响美观,因此需要让表头的宽度变为不换行,且由内容自动撑开。 以下是作为工作记录,用于demo演示教程 先贴个…...
C语言程序设计P5-4【应用函数进行程序设计 | 第四节】——知识要点:数组作函数参数
知识要点:数组作函数参数 视频: 目录 一、任务分析 二、必备知识与理论 三、任务实施 一、任务分析 任务要求用选择法对数组中的 10 个整数按由小到大的顺序排序,前面在讲解数组时讲冒泡法排序曾提到选择法排序的思想。 所谓选择法就是…...
时间序列模型在LSTM中的特征输入
这里写目录标题 前言LSTM的输入组成时间步例子 实际代码解读特征提取处理成dataloader格式(用于输入到模型当中)对应到lstm的模型创建代码 总结 前言 本文章将帮助理解如何将一个时间序列的各种特征(年月日的时间特征,滚动窗口滞…...
Python_Flask02
所有人都不许学Java了,都来学Python! 如果不来学的话请网爆我的老师 连接前的准备 安装pymysql 和 flask_sqlalchemy,安装第三下面两个所需要的包才能连接上数据库 pip install pymysql pip install flask_sqlalchemy pymysql是一个Pyth…...
threejs相机辅助对象cameraHelper
为指定相机创建一个辅助对象,显示这个相机的视锥。 想要在场景里面显示相机的视锥,需要创建两个相机。 举个例子,场景中有个相机A,想要显示相机A的视锥,那么需要一个相机B,把B放在A的后面,两个…...
断点续传+测试方法完整示例
因为看不懂网上的断点续传案例,而且又不能直接复制使用,干脆自己想想写了一个。 上传入参类: import com.fasterxml.jackson.annotation.JsonIgnore; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProp…...
C#设计模式--状态模式(State Pattern)
状态模式是一种行为设计模式,它允许对象在其内部状态发生变化时改变其行为。这种模式的核心思想是将状态封装在独立的对象中,而不是将状态逻辑散布在整个程序中。 用途 简化复杂的条件逻辑:通过将不同的状态封装在不同的类中,可…...
Excel技巧:如何批量调整excel表格中的图片?
插入到excel表格中的图片大小不一,如何做到每张图片都完美的与单元格大小相同?并且能够根据单元格来改变大小?今天分享,excel表格里的图片如何批量调整大小。 方法如下: 点击表格中的一个图片,然后按住Ct…...
hadoop中导出表与数据的步骤
大家好,我是 V 哥。在Hadoop中导出表与数据,可以通过多种方式实现,包括使用Hive的EXPORT命令、MapReduce作业、Hive查询以及Sqoop工具。下面V 哥将详细介绍这些步骤和一些代码示例,来帮助大家更好理解。 1. 使用Hive的EXPORT命令…...
springBoot中的日志级别在哪里配置
在Spring Boot中,日志级别的配置可以通过多种方式来实现,主要包括在配置文件中设置、使用自定义的logback配置文件,以及在代码中动态配置等。以下是一些具体的配置方法: 一、在配置文件中设置日志级别 Spring Boot默认使用appli…...
17. Threejs案例-Three.js创建多个立方体
17. Threejs案例-Three.js创建多个立方体 实现效果 知识点 WebGLRenderer (WebGL渲染器) WebGLRenderer 是 Three.js 中用于渲染 WebGL 场景的核心类。它负责将场景中的对象渲染到画布上。 构造器 new THREE.WebGLRenderer(parameters) 参数类型描述parametersObject可选…...
数据结构——有序二叉树的删除
在上一篇博客中,我们介绍了有序二叉树的构建、遍历、查找。 数据结构——有序二叉树的构建&遍历&查找-CSDN博客文章浏览阅读707次,点赞18次,收藏6次。因为数据的类型决定数据在内存中的存储形式。left right示意为左右节点其类型也为…...
力扣1401. 圆和矩形是否有重叠
用矢量计算: class Solution { public:bool checkOverlap(int radius, int xCenter, int yCenter, int x1, int y1, int x2, int y2) {//矩形中心float Tx(float)(x1x2)/2;float Ty(float)(y1y2)/2;//强行进行对称操作,只考虑第一象限if(xCenter<Tx)…...
idea连接到docker出现 org.apache.hc.client5.http.ConnectTimeoutException 异常怎么办?
前情提要 我电脑是win11,我安装了centOS7虚拟机,配置linux环境 idea是2024社区免费版本 我就这一步步排查问题,终于发现了是因为我的2375端口没有ipv4开放,只在ipv6开放 踩坑提醒: 对了,一个一个问题排…...
一番赏小程序定制开发,打造全新抽赏体验平台
随着盲盒的热潮来袭,作为传统的潮玩方式一番赏也再次受到了大家的关注,市场热度不断上升! 一番赏能够让玩家百分百中奖,商品种类丰富、收藏价值高,拥有各种IP,从而吸引着各个圈子的粉丝玩家,用…...
PHP语法学习(第六天)
💡依照惯例,回顾一下昨天讲的内容 PHP语法学习(第五天)主要讲了PHP中的常量和运算符的运用。 🔥 想要学习更多PHP语法相关内容点击“PHP专栏” 今天给大家讲课的角色是🍍菠萝吹雪,“我菠萝吹雪吹的不是雪,而…...
按vue组件实例类型实现非侵入式国际化多语言翻译
#vue3##国际化##本地化##international# web界面国际化,I18N(Internationalization,国际化),I11L(International,英特纳雄耐尔),L10N(Localization,本地化)&…...
2024年认证杯SPSSPRO杯数学建模B题(第一阶段)神经外科手术的定位与导航解题全过程文档及程序
2024年认证杯SPSSPRO杯数学建模 B题 神经外科手术的定位与导航 原题再现: 人的大脑结构非常复杂,内部交织密布着神经和血管,所以在大脑内做手术具有非常高的精细和复杂程度。例如神经外科的肿瘤切除手术或血肿清除手术,通常需要…...
51c视觉~合集24
我自己的原文哦~ https://blog.51cto.com/whaosoft/11870494 #R-Adapter 零样本模型微调新突破,提升鲁棒性与泛化能力 论文提出新颖的Robust Adapter(R-Adapter),可以在微调零样本模型用于下游任务的同时解决这两个问题。该方…...
idea启动tomcat服务中文乱码
在idea中启动tomcat服务后部分中文乱码 但是在tomcat日志部分正常 并且在tomcat中中文也是正常 查询大量资料修改idea编码,虚拟机编码、tomcat默认编码、终端默认编码,统统没有效果。 最终发现修改tomcat下文件夹 .\conf\logging.properties 网络上…...
android studio 读写文件操作(应用场景二)
android studio版本:2023.3.1 patch2 例程:readtextviewIDsaveandread 本例程是个过渡例程,如果单是实现下图的目的有更简单的方法,但这个方法是下一步工作的基础,所以一定要做。 例程功能:将两个textvi…...
【数据结构】【线性表】特殊的线性表-字符串
目录 字符串的基本概念 字符串的三要素 字符串的基本概念 串的编码 串的实现及基本运算 顺序串的实现 串的静态数组实现 串的动态数组的实现 顺序存储的四种方案 链式串的实现 基本运算 方案三 方案一 字符串的基本概念 数据结构千千万,…...
【AWS re:Invent 2024】一文了解EKS新功能:Amazon EKS Auto Mode
文章目录 一、为什么要使用 Amazon EKS Auto Mode?二、Amazon EKS自动模式特性2.1 持续优化计算成本2.2 迁移集群操作2.3 EKS 自动模式的高级功能 三、EKS Auto 集群快速创建集群配置四、查看来自 API 服务器的指标五、EKS 相关角色权限设置六、参考链接 一、为什么…...
HTTPS的工作过程
1.HTTPS协议原理 1.1HTTPS协议的由来 HTTP在传输网络数据的时候是明文传输的,信息容易被窃听甚至篡改,因此他是一个不安全的协议(但效率高)。在如今的网络环境中,数据安全是很重要的(比如支付密码又或者各…...
Java并发编程学习之从资本家的角度看多线程和并发性(一)
目录 前言前置知识一、单线程时代二、为什么要有多线程,多线程的优点?三、使用多线程会遇到什么问题?四、多线程和并发编程的关系总结 前言 这篇文章是打开Java多线程和并发编程的大门的开始,如标题《从老板的角度看多线程和并发…...
基于STM32设计的智能宠物喂养系统(华为云IOT)_273
文章目录 一、前言1.1 项目介绍【1】项目开发背景【2】设计实现的功能【3】项目硬件模块组成【4】设计意义【5】国内外研究现状【6】摘要1.2 设计思路1.3 系统功能总结1.4 开发工具的选择【1】设备端开发【2】上位机开发1.5 参考文献1.6 系统框架图1.7 系统原理图1.8 实物图1.9…...
Mybatis-Plus的主要API
一、实体类操作相关API BaseMapper<T>接口 功能:这是 MyBatis - Plus 为每个实体类对应的 Mapper 接口提供的基础接口。它提供了一系列基本的 CRUD(增删改查)操作方法。例如insert(T entity)方法用于插入一条记录,d…...
Pillow:强大的Python图像处理库
目录 一、引言 二、Pillow 库的安装 三、Pillow 库的基本概念 四、图像的读取和保存 五、图像的基本属性 六、图像的裁剪、缩放和旋转 七、图像的颜色调整 八、图像的滤镜效果 九、图像的合成和叠加 十、图像的绘制 十一、示例程序:制作图片水印 十二、…...
Springboot定时任务详解
文章目录 Springboot定时任务详解一、引言二、cron表达式三、使用Scheduled注解1、开启定时任务2、添加定时任务 四、使用TaskScheduler接口1、注入TaskScheduler实例 五、集成Quartz框架1、集成Quartz 六、实际使用示例七、总结 Springboot定时任务详解 一、引言 在现代软件…...
【Linux】环境ChatGLM-4-9B 模型之 openai API 服务
一、摘要 最近看到 Function Call 比较感兴趣,它的核心是赋予大模型能够调用外部API的能力,能够解决大模型功能扩展性问题,允许模型调用外部数据库或API,提供特定领域的详细信息;解决信息实时性问题,模型可以实时获取最新数据;解决数据局限性问题,大模型训练数据虽多但…...
mobi文件转成pdf
将 MOBI 文件转换为 PDF 格式通常涉及两个步骤: 解析 MOBI 文件:需要提取 MOBI 文件的内容(文本、图片等)。将提取的内容转换为 PDF:将 MOBI 文件的内容渲染到 PDF 格式。 可用工具 kindleunpack 或 mobi࿱…...
Linux---对缓冲区的简单理解--第一个系统程序
前序: 首先先理解一下什么是回车与换行;回车和换行是两个概念,它们不是一个东西; 回车:光标回到开始;换行:换到下一行; 如下图: 行缓冲区 如何理解缓冲区问题? 可以认为࿰…...
word poi-tl 表格功能增强,实现表格功能垂直合并
目录 问题解决问题poi-tl介绍 功能实现引入依赖模版代码效果图 附加(插件实现)MergeColumnData 对象MergeGroupData 类ServerMergeTableData 数据信息ServerMergeTablePolicy 合并插件 问题 由于在开发功能需求中,word文档需要垂直合并表格&…...
鸿蒙实现数据管理
目录: 1、鸿蒙实现数据管理的三种方式2、用户首选项3、键值型数据管理3.1、获取KVManager实例,用于管理数据库对象3.2、创建并获取键值数据库3.3、调用put()方法向键值数据库中插入数据3.4、调用get()方法获取指定键的值3.5、调用delete()方法删除指定键…...
图片上传HTML
alioss sky:jwt:# 设置jwt签名加密时使用的秘钥admin-secret-key: itcast# 设置jwt过期时间admin-ttl: 7200000# 设置前端传递过来的令牌名称admin-token-name: tokenalioss:endpoint: ${sky.alioss.endpoint}access-key-id: ${sky.alioss.access-key-id}access-key-secret: $…...
golang 代发邮件支持附件发送,outlook案列,其他邮箱需要替换对应邮箱服务域名
GPT问答实例 import pandas as pd from openai.embeddings_utils import get_embedding, cosine_similarity import openai import os import logging as logger from flask_cors import CORS import os openai.api_key os.getenv(OPENAI_API_KEY)class Chatbot():def parse_…...
输出绝对值
输出绝对值 C语言代码C 代码Java代码Python代码 💐The Begin💐点点关注,收藏不迷路💐 输入一个浮点数,输出这个浮点数的绝对值。 输入 输入一个浮点数,其绝对值不超过10000。 输出 输出这个浮点数的绝对…...
docker desktop打包配置国内镜像地址
打包遇到无法访问外网资源,直接配置国内镜像地址 直接加入如下代码就行: {"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"registry-m…...
鸿蒙Next学习-监听指定页面显示/页面生命周期
自定义组件监听页面生命周期 使用无感监听页面路由的能力,能够实现在自定义组件中监听页面的生命周期。 // Index.ets import { uiObserver, router, UIObserver } from kit.ArkUI;Entry Component struct Index {listener: (info: uiObserver.RouterPageInfo) &g…...
计算机网络 —— HTTPS 协议
前一篇文章:计算机网络 —— HTTP 协议(详解)-CSDN博客 目录 前言 一、HTTPS 协议简介 二、HTTPS 工作过程 1.对称加密 2.非对称加密 3.中间人攻击 4.引入证书 三、HTTPS 常见问题 1.中间人能否篡改证书? 2.中间人能否调…...
Oracle之表空间迁移
问题背景:一个数据表随着时间的累积,导致所在表空间占用很高,里面历史数据可以清除,保留近2个月数据即可 首先通过delete删除了2个月以前的数据。 按网上的教程进行空间压缩,以下sql在表所在用户执行: -- 允许表重新…...