MySQL(一)——初识数据库(概念、数据类型、基本表库操作)

news2024/11/28 8:45:31

文章目录

  • 初识数据库
    • 数据库相关基本概念
    • 数据库的分类
  • MySQL数据库
    • 数据模型
    • 基本操作
      • 库操作
        • 查看数据库
        • 创建数据库
        • 删除数据库
        • 选中数据库
      • 数据类型
        • 数值类型
        • 字符串类型
        • 日期类型
      • 表操作
        • 查看所有表
        • 查看表结构
        • 创建表
        • 删除表
      • 其他操作
        • 查看警告信息
        • 查看编码集

这是我们 MySQL 学习的第一程,话不多说,直接开始吧!

初识数据库

数据库相关基本概念

【数据库(DataBase)】

数据库(DB)是一个按照数据结构来组织、存储和管理数据的仓库,通俗点,就是存储数据的仓库。

数据库与数据结构的关系:

数据库是一个用于存储、管理和操作大量数据的系统,而数据结构则提供了数据的组织和存储方式,使数据库能够高效地管理和操作这些数据。通俗的讲,数据库底层使用了合适的数据结构来组织存储数据。

为什么要使用数据库?

最简单的一点就是,为了保证数据的持久性

我们在例如IDEA上编程并运行时,数据会存在内存中,这些数据会存在安全问题,断电或其他系统故障可能导致内存中的数据未能及时保存到磁盘而丢失,所以引出了数据库。

当然,我们要使用数据库还有其他的原因,例如:数据共享与协同合作、支持复杂数据分析。

为什么不使用文件呢?

因为文件系统通常面向某一特定应用程序,数据共享性差,冗余度大,并且数据独立性较差,同时不利于数据查询和管理,不利于存储海量数据。

综上所述,我们要学习使用数据库。


【数据库管理系统(DataBase Management System)】

数据库管理系统(DBMS)是建立、操作和管理数据库的大型软件,通俗地讲,就是操作数据库的工具


【数据库服务】

数据库服务是指提供数据库访问和管理功能的系统或软件。它通常包括数据库服务器、网络连接、存储设备等组件,用于存储、检索和管理数据。数据库服务可以由多个客户端应用程序共享,并提供数据的一致性、安全性和可靠性。常见的数据库服务包括MySQL、Oracle、Microsoft SQL Server等。

数据库服务与数据库管理系统的区别:

数据库服务是一个更广泛的概念,涵盖了数据库管理系统以及相关的硬件和软件组件;而数据库管理系统则是具体的软件产品,专注于管理和操作数据库的功能。


【SQL】

SQL(Structured Query Language)是一种特定于数据库的编程语言,用于管理、查询和操作关系型数据库。

SQL分类:

  • 数据查询语言(DQL)
    • DQL是SQL中最重要的部分,用于从数据库中检索数据。
    • 主要命令是SELECT,用于选择表中的特定列和行。
  • 数据定义语言(DDL)
    • DDL用于定义和管理数据库的结构,包括创建、修改和删除表和其他数据库对象。
    • 主要命令包括CREATE(创建数据库对象)、ALTER(修改数据库对象)、DROP(删除数据库对象)和TRUNCATE(清空数据库对象)
  • 数据操纵语言(DML)
    • DML用于添加、修改和删除数据库中的数据。
    • 主要命令包括INSERT(插入数据)、UPDATE(更新数据)和DELETE(删除数据)
  • 数据控制语言(DCL)
    • DCL用于控制对数据库的访问权限,确保数据的安全和完整。
    • 主要命令包括GRANT(授予权限)和REVOKE(撤销权限)
  • 事务控制语言(TCL)
    • TCL用于管理数据库中的事务,确保数据的一致性和完整性。
    • 主要命令包括COMMIT(提交事务)和ROLLBACK(回滚事务)
  • 游标控制语言(CCL)
    • CCL用于管理和操作数据库中的游标,游标是一个存储在DBMS服务器上的数据库查询。
    • 主要命令包括DECLARE(声明游标)和FETCH(获取游标中的数据)

所以,我们使用 SQL 操作 数据库管理系统(DBMS),再通过 数据库管理系统 操作 数据库以及数据库中的数据。

在这里插入图片描述


数据库的分类

数据库大体可分为关系型数据库非关系型数据库

  • 关系型数据库(Relational Database)

    指采用了关系模型来组织数据的数据库。

    使用表格来组织数据,每个表由行和列组成,具有固定的模式(schema),对数据的结构和关系进行严格定义。关系模型可以简单理解为二维表格模型,一个关系型数据库就是由这些二维表及其之间的关系组成的数据组织。

    例如:OracleMySQLSQL Server

  • 非关系型数据库(NoSQL DataBase)

    不使用传统关系模型的数据库系统,并且不基于SQL

    它们通常以不同的方式存储和处理数据,旨在解决关系型数据库在某些应用场景下的局限性,如大规模数据、高并发访问和高可扩展性需求等。

    例如:redismongodbhbase


区别:

关系型数据库非关系型数据库
使用SQL不强制要求,一般不基于SQL实现
事务支持支持不支持
复杂操作支持不支持
海量读写操作效率低效率高
基本结构基于表和列,结构固定灵活性比较高,例如键值对、文档
使用场景业务方面的联机事务处理(OLTP)系统用于数据的缓存、或基于统计分析的联机分析处理(OLAP)系统

主流数据库一览(2019年的,了解为主):

了解数据库(包括数据库发展史、分类、著名人物、主流数据库、关系与非关系型数据库)_BBOYWISH的博客-CSDN博客


MySQL数据库

MySQL是一种流行的开源关系型数据库管理系统,用于有效地存储、管理和处理数据。它由瑞典MySQL AB公司开发,并现属于Oracle公司。作为一个关系型数据库,MySQL使用表格来存储数据,支持标准的SQL语言,并能够运行在多种系统和多语言环境下。

MySQL因其开源高效灵活的特点,成为广泛应用的数据库管理系统。无论是小型网站还是大型企业应用,MySQL都能提供强大的数据管理和处理能力。


数据模型

MySQL的数据模型指的是数据库中数据的组织结构和操作方式。数据模型是数据库系统的核心,它定义了如何存储、访问和管理数据。

MySQL的数据模型的类型有很多,最常用的就是关系模型,除关系模型外,还有网状模型和层次模型等,但关系模型因其简单性和强大的数学理论基础被广泛使用,我们后续讨论的就是关系模型。

我们的MySQL关系型数据库建立在关系模型的基础上,由多张相互连接的二维表及其关系组成。

我们只需要记住:一个MySQL数据库服务下,可以有多个数据库,而一个数据库中可以有多张表,一张表中可以有很多的数据行(或记录),每条记录由很多的属性(字段、列)构成。

二维表,可称为数据表,由行和列组成,一行代表一条记录,一列代表一个属性或字段

如下图就是两个二维表及其关系:
在这里插入图片描述

  • 如员工表中1 金庸 总裁 2这一行就是一条记录(数据行)
  • id、name、job、dept_id分别是员工表这张二维表的四个属性
  • 一个关系型数据库就是由这些二维表及其之间的关系组成的数据组织

基本操作

了解了MySQL数据库是由一张张二维表组成等基本结构的知识后,我们学习一些最基本SQL语句来操作数据库,主要包括基本库操作,基本表操作,另外还有数据类型。其他的知识后序会不断发文介绍的,这只是我们的第一步!

库操作

查看数据库、创建数据库、删除数据库、选中数据库

查看数据库

语法:

SHOW DATABASES;
  • 分号问题: MySQL分号是可选的,并且可以省略。每条语句默认以换行符作为结束标志。这意味着你可以在一行中编写多个SQL语句,而不需要使用分号分隔它们。

    但为了确保你的SQL语句在不同的数据库系统中都能正确执行,建议在每个SQL语句的末尾添加分号。 这样可以提高代码的可移植性,并避免潜在的语法错误。

  • SHOW 是一个关键字,作用是显示某些信息

  • 注意DATABASES是复数。

  • 作用就是:查看当前服务器的所有数据库

例如:
在这里插入图片描述


创建数据库

语法:

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
    [create_option] ...

create_option: [DEFAULT] {
    CHARACTER SET [=] charset_name
  | COLLATE [=] collation_name
  | ENCRYPTION [=] {'Y' | 'N'}
}
  • |:表示"或"的意思,用于分隔不同的选项。例如,在CREATE语句中,可以选择CREATE DATABASE或者CREATE SCHEMA来创建一个数据库(最常用的是DATABASE)。
  • []:表示可选的部分。例如,在CREATE DATABASE语句中,IF NOT EXISTScreate_option都是可选的,不选也可以达到效果,不过会有差别,这要视情况而定。
  • {}:表示一组选项中的一个必须被选择。例如,用户选择创建数据库必须选择DATABASE | SCHEMA
  • =:表示赋值操作符,用于给变量或参数赋值。例如,在CHARACTER SET [=] charset_name中,等号左边的CHARACTER SET是一个变量名,右边的charset_name是要赋给它的值。
  • 大写显示的都是关键字,db_name是我们要创建的数据库的名称

【最简单的建库语法】

CREATE DATABASE db_name;

用对关键字并自定义一个数据库名,就可以创建成功;不过,以这种方式创建数据库,如果数据库已经存在(重名),就会报错,而一旦报错整个SQL就会终止

在这里插入图片描述

【加上IF NOT EXISTS

CREATE DATABASE IF NOT EXISTS db_name;

IF NOT EXISTS翻译过来就是如果不存在,意味着只有db_name这个数据库不存在时才会创建,相当于多了一层校验,如果数据库存在,最多只会警告(终端),有的甚至没有显式地展示警告(如 Navicat Premium Lite 17),这样的话,就不会出现一条语句的错误影响整个执行的情况了。

【加上可选选项】

可选项有三个,可多选,用于指定数据库的特性:

create_option: [DEFAULT] {
    CHARACTER SET [=] charset_name
  | COLLATE [=] collation_name
  | ENCRYPTION [=] {'Y' | 'N'}
}
  • CHARACTER SET指定数据库使用的字符编码方式,通常采用utf8mb4
  • COLLATE指定数据库中的字符排序规则,常用utf8mb4_0900_ai_ci
    • utf8mb4是一种字符集,支持最多4个字节的UTF-8编码。与传统的utf8(实际上是utf8mb3,即最多3个字节)不同,utf8mb4能够存储更多的Unicode字符,包括所有的emoji表情符号和一些特殊字符。
    • 0900表示使用Unicode的排序规则(collation),其中"0900"是该排序规则的编号。
    • ai代表“accent insensitive”(不区分重音符号),意味着在排序和比较时,带有重音符号的字符(如“á”和“a”)会被视为相等。
    • ci代表“case insensitive”(不区分大小写),意味着在排序和比较时,大写和小写字符(如“A”和“a”)会被视为相等,所以,当设定成功后,我们编写的所有SQL语句就不区分大小写了,将关键字大写只是方便区分而已。
  • ENCRTPTION用于指定数据库是否加密

例如:

CREATE DATABASE IF NOT EXISTS db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;

【以关键字为库名】

直接将关键字作为库名是不可以的,需要用``(反引号)`引起来

CREATE DATABASE IF NOT EXISTS `create`;

在这里插入图片描述

  • 以后若想将关键字作为名字,就得使用反引号引起来。

删除数据库

语法

DROP {DATABASE | SCHEMA} [IF EXISTS] db_name
  • 不加IF EXISTS校验,如果删除不存在的库,就会报错,终止;如果需要删除建议加上校验
  • 删库操作谨慎使用,误删后果十分严重

选中数据库

语法:

USE db_name;
  • 选择了数据库才可以在选中数据库中执行建表等操作,如果想换数据库,那就再用USE db_name切换即可。

  • 可以通过数据库的一个内置函数观察当前连接(选择)的数据库,语法如下:

    SELECT DATABASE();
    
    • 如果没有选择任何数据库,得到的结果就是NULL

在这里插入图片描述

  • 如果选择了某个数据库,就会显示该数据库的名字:

在这里插入图片描述

  • NULL并不是空指针或空引用,SQL中的NULL表示缺失值或未知值,具有很多特性,后序将在合适的位置介绍

数据类型

数值类型
类型大小作用
TINYINT1 BytesTINYINT(1)用作BOOL类型,常用作表示性别
SMALLINT2 Bytes大整数值
MEDIUMINT3 Bytes大整数值
INT4 Bytes大整数值
BIGINT8 Bytes极大整数值,一般编号为此类型
FLOAT4 Bytes单精度浮点数值,存在精度损失(可以像DECIMAL一样使用M和D)
DOUBLE8 Bytes双精度浮点数值,存在精度损失,但比FLOAT精度高(可以像DECIMAL一样使用M和D)
DECIMAL(M, D)如果M>D,为M+2,否则D+2M表示位数(包括小数位),D指定小数位数,精度极高,一般用于表示金额
NUMERIC(M, D)如果M>D,为M+2,否则D+2等同于DECIMAL
  • 数值类型默认为有符号类型,如果需要可以指定为无符号,做法如:INT UNSIGNED、BIGINT UNSIGNED,尽量不使用无符号,容量不足时,建议更换更大的类型(如int转为bigint),而不是有符号转无符号

  • 对于整型类型范围(不必特意记忆):

    • 有符号范围:-2^(类型字节数 * 8-1)到2^(类型字节数 * 8-1)-1,如int是4字节,就 是-231到231-1

    • 无符号范围:0到2^(类型字节数 * 8)-1,如int就是2^32-1


字符串类型
类型大小作用
CHAR(SIZE)0-255 bytes定长字符串,SIZE指定字符数,固定占用指定空间
VARCHAR(SIZE)0-65 535 bytes变长字符串,SIZE指定字符数,最多占用指定空间,根据实际存储字符串的长度来占用存储空间
TINYBLOB0-255 bytes不超过255个字符的二进制字符串
TINYTEXT0-255 bytes短文本字符串
BLOB0-65 535 bytes二进制形式的长文本数据
TEXT0-65 535 bytes长文本数据
MEDIUMBLOB0-16 777 215 bytes二进制形式的中等长度文本数据
MEDIUMTEXT0-16 777 215 bytes中等长度文本数据
LONGBLOB0-4 294 967 295 bytes二进制形式的极大文本数据
LONGTEXT0-4 294 967 295 bytes极大文本数据
  • CHAR类型占用固定长度的空间,当存储较短的字符串时会浪费存储空间,但这样的好处是提高了检索效率。定长字段的存取效率通常高于变长字段。适用于存储长度相近或固定长度的数据,如身份证号码、电话号码等。
  • VARCHAR(SIZE)是使用最多的字符串类型,按实际存储内容占用空间,适合存储长度变化较大的字符串,从而可以节省存储空间。但是在检索效率上通常低于CHAR类型。适合用于存储长度不定的文本数据,如评论、文章内容等。

日期类型
类型大小范围格式用途
YEAR1 bytes1901/2155YYYY年份值
DATE3 bytes1000-01-01/9999-12-31YYYY-MM-DD日期值
TIME3 bytes‘-838:59:59’ / ‘838:59:59’HH:MM:SS时间值或持续时间
DATETIME8 bytes1000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
TIMESTAMP4 bytes从1970到2038年,自动检索当前时 区并进行转换。YYYYMMDDHHMMSS时间戳
  • 最常用的就是DATEDATETIMEDATE用于表示如生日,DATETIME用于表示如创建xx的时间等

表操作

查看某个数据库的表,查看表结构,创建表,删除表

查看所有表

语法:

SHOW TABLES;
  • 一定要选中数据库才可以查看该数据库的所有表

在这里插入图片描述


查看表结构

语法:

DESC tbl_name;

在这里插入图片描述

解释:(后四条有关约束,后面发文介绍)

  • Field:属性(字段)名
  • Type:属性(字段)类型
  • NULL:是否允许为空
  • Key:索引类型(键值的类型)
  • Default:默认值
  • Extra:拓展功能

查看的是结构,并不是数据。


创建表

语法:

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name (
 field1 datatype [COMMENT 'string'],
 field2 datatype [COMMENT 'string'],
 field3 datatype [COMMENT 'string']
);
  • field1、field2… 均为自定义的字段名;datatype为该字段的数据类型;注意最后个字段后没有逗号

  • 可以使用COMMENT关键字增加字段说明(注意 注释说明必须被单引号引起来,不论中文还是英文):
    在这里插入图片描述

  • 加上TEMPORARY意味着创建的是一个临时表(否则就是永久表),临时表通常以特定的命名约定(例如,以#开头)来标识,是在数据库会话期间创建的,它们通常用于存储中间结果或临时数据。这些表只在当前会话中可见,并且在会话结束时会自动删除。

    • 临时表和真实的表(永久表)的区别

      1. 生命周期:临时表只在当前会话期间存在,当会话结束时,临时表会自动删除。而真实的表是持久化的,它们存储在数据库中,并且可以在多个会话之间共享和使用。
      2. 可见性:临时表仅对创建它们的会话可见,其他会话无法访问或修改这些表。而真实的表可以被所有连接到数据库的用户访问和操作。
      3. 数据持久性:临时表的数据不是永久存储的,它们只存在于内存中,并且在会话结束后会被自动清除。真实的表则将数据存储在磁盘上,即使会话结束,数据仍然存在。
      4. 用途:临时表通常用于存储中间结果、临时计算或处理大量数据时使用。它们提供了一种快速且临时的方式来存储和操作数据,而不会对真实表造成影响。真实的表通常用于长期存储和管理数据,如用户信息、订单记录等。
      5. 性能:由于临时表存储在内存中,访问速度通常比真实表快,因为它们不需要从磁盘读取数据。然而,如果内存不足,临时表可能会被交换到磁盘上,导致性能下降。
    • SHOW TABLES;不会显示临时表

    • DESC tmp_tbl_name;可以查看临时表的结构

【拓展】

快速创建结构相等的表

上面例子我们已经创建好了一张表table1,我们快速创建一个结构相等的表,语法如下:

CREATE TABLE [IF NOT EXISTS] tbl_name LIKE copyed_tbl_name;

在这里插入图片描述

  • 只复制表的结构,不会复制表的数据!

删除表

语法:

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...;
  • 一条语句可以删除多个表,多个表的表名用,(逗号)连接,但注意一条语句只能删除一条数据库
  • TEMPORARY用于显式地说明删除的是临时表,即使不加TEMPORARY也可以删除临时表,因为临时表和永久表不能重名
  • 删除操作谨慎执行,不论是删表还是删库

其他操作

查看警告信息

语法:

SHOW WARNINGS;
  • 目前我前已知的警告信息只有IF NOT EXISTS发现存在、IF EXISTS发现不存在抛出的。

查看编码集

语句:

SHOW VARIABLES LIKE '%character%';

在这里插入图片描述

  • 该语句用于显示MySQL数据库中所有与字符相关的系统变量。这些变量包括字符集、排序规则等设置。

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

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

相关文章

GD32E503实现串口中断收发功能

如有技术问题及技术需求请加作者微信! 源码下载链接:代码下载 亲测可用实现GD32E503库函数串口数据收发功能: #include "gd32e50x.h" #include "gd32e503v_eval.h" #include "systick.h" #include <stdio.h> #include "user_uart…

JVM知识总结(性能调优)

文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 性能调优 何时进行JVM调优&#xff1f; 遇到以下情况&#xff0c…

初识C++ · 智能指针

目录 前言&#xff1a; 1 智能指针的发展历史 2 unique_ptr和shared_ptr的基本使用 3 shared_ptr的模拟实现 4 有关定制删除器 前言&#xff1a; 智能指针的引入&#xff0c;我们得先从异常开始说起&#xff0c;异常面临的一个窘境是new了多个对象&#xff0c;抛异常了会…

centos7简介和安装步骤

目录 centos简介 1.CentOS 7 简略简介 2.使用建议 vmware搭建centos7 1.centos镜像下载 2.虚拟机创建 2.1 新建虚拟机 2.2典型 2.3操作系统 2.4客户机操作系统选择 ​编辑 2.5虚拟机命名与位置安装 2.5磁盘容量 2.6完成 2.6编辑虚拟机 2.6.1内存大小编辑 2.6.…

React+vite+antd点击路由切换时出现闪屏

问题描述:点击左侧路由切换会出现闪屏的情况 页面的效果 解决方案 完整代码 import { lazy, Suspense, ReactNode } from "react"; import { Navigate, useLocation } from "react-router-dom"; import LayOut from ../pages/LayOut/LayOut import NotFo…

过滤了字母、数字、_、$的webshell命令执行技巧

目录 对于php5以上首先要解决的问题有 解决技巧 1.code长度小于35位 2.没有字母、数字、_ 、$ 3.怎么把文件放进服务器 4.怎么执行文件里面的内容 1.执行Linux命令 2.执行文件里面的shell命令 5.构造完整的code参数 6.我们还可以通过修改文件里面shell命令&#xff0c;…

学习记录703@计算机组成原理之原码、补码、反码、移码

数据表示基本概念 数据表示分为有符号数和无符号数&#xff0c;其中有符号数分为整数、纯小数、带小数&#xff1b;整数和纯小数小数点位置固定&#xff0c;统称为定点数&#xff1b;带小数小数点位置可以浮动&#xff0c;称为为浮点数&#xff0c;浮点数阶码就是整数部分&…

忘记iPhone锁屏密码,多次输出密码导致iPhone停用了怎么解锁?

iphone已停用怎么解锁&#xff1f;当因忘记iPhone锁屏密码&#xff0c;多次输入错误密码而被停用时&#xff0c;怎么解锁恢复对设备的访问是非常重要的。下面小编将给大家介绍几种解锁已停用iPhone的方法&#xff0c;一起来看看吧&#xff01; 一、使用恢复模式解锁 将iPhone连…

知识学习技巧:如何从 iPhone 恢复误操作删除的视频

您来这里主要是因为您想知道如何从 iPhone 恢复已删除的视频。实际上&#xff0c;如果视频是用 iPhone 拍摄的&#xff0c;您可以尝试在相册“最近删除”中找到它们。删除后它将保留 40 天。如果您清空了相册或无法从相册中找到已删除的视频&#xff0c;那么您必须尝试使用奇客…

系统管理篇

系统管理 一、网络管理1. 网络状态查看2. 网络和路由配置3. 网络故障排除4. 网络服务管理 二、软件管理1. 软件包管理器2. rpm包和rpm命令3. yum仓库4. 源代码编译安装5. 内核升级6. grub配置文件 三、进程管理1. 进程的概念与进程查看2. 进程的控制命令3. 进程的通信方式--信号…

Linux内核中的eMMC存储支持详解

一、eMMC概述 eMMC&#xff08;Embedded MultiMediaCard&#xff09;是一种嵌入式多媒体卡&#xff0c;是一种基于NAND Flash的闪存卡标准&#xff0c;由JEDEC&#xff08;电子设备工程联合委员会&#xff09;订立和发布。eMMC集成了NAND Flash、闪存控制器和eMMC协议接口&…

【npm】如何将开发的vite插件发布到npm

前言 简单说下 npm 是什么&#xff1a; npm 是一个 node 模块管理工具&#xff0c;也是全球最大的共享源。 npm 工具与 nodejs 配套发布&#xff0c;便利开发人员共享代码。npm 主要包括 npm 官方网站、CLI&#xff08;控制台命令行工具&#xff09;、和 registry&#xff08;…

系统架构设计定义

系统架构设计是软件开发和信息系统构建中至关重要的一环&#xff0c;它涉及到系统的整体结构、模块划分、接口定义以及设计原则等多个方面。以下是对系统架构设计的详细阐述&#xff1a; 一、系统架构设计的定义 系统架构设计是指对系统的整体结构、模块关系、接口定义以及交互…

IDEA2023版本创建mavenWeb项目及maven的相关配置

在使用idea创建maven项目之前&#xff0c;首先要确保本地已经下载并配置好maven的环境变量&#xff0c;可以参考我主页的maven下载及环境变量配置篇。 接下来首先介绍我们需要对maven安装目录文件进行的修改介绍。 maven功能配置 我们需要需改 maven/conf/settings.xml 配置…

数字孪生水利“天空地水工”一体化监测感知行动方案的框架及目标

监测感知数据是构建数字孪生水利体系的前提和基础。&#xff0c;推进物理流域监测系统科学建设和高频乃至在线运行&#xff0c;提升水利对象全要素和治理管理全过程智能监测感知能力&#xff0c;为数字孪生水利的高保真建设运行提供有力算据保障&#xff0c;支撑构建具有“四预…

博客系统测试用例报告

一、项目背景 ⼀款基于SpringBoot实现的简易⽹站&#xff0c;功能有⽤⼾注册及登录&#xff0c;博客列表展⽰&#xff0c;博客详情查看&#xff0c;博客编写和⽂章评论 点赞功能采⽤的技术有&#xff1a;HTML、CSS、Mybatis、Token、Ajax等技术。 二、项目功能 1.注册 进入…

仓颉编程入门 -- 泛型概述 , 如何定义泛型函数

泛型概述 , 如何定义泛型函数 1 . 泛型的定义 在仓颉编程语言中&#xff0c;泛型指的是参数化类型&#xff0c;参数化类型是一个在声明时未知并且需要在使用时指定的类型。类型声明与函数声明可以是泛型的。最为常见的例子就是 Array、Set 等容器类型。以数组类型为例&#xf…

inscode的会员计划的python环境问题【版本3.9.16】无法升级python

购买了inscode的会员计划后,部署python项目 遇到python环境无法升级的问题 inscode的会员计划的环境是3.9.16,但是项目用的例子需要3.10以上的版本,最终本人也无法完全解决,虽然手动安装了python3.10,一切都可以实现,但是最后环境自动恢复到3.9版本,导致自己手动配置的全…

速成cesium而忽略前端基础,你可能会遇到这些坑!

cesium作为一个功能强大的开源三维地球框架&#xff0c;做出来的效果受到众多企业的青睐。然而&#xff0c;许多小伙伴们都 希望能够快速掌握cesium&#xff0c;从而忽略了前端基础知识的重要性。这种急功近利的学习方式往往会导致一些不良后果&#xff1a; 1. 前端基础太薄弱…

【leetcode】找出与数组相加的整数II( 过程反思 思路详解 )

题目分析&#xff1a; 题目要咱们除掉nums1中的两个数&#xff0c;从另一个角度理解就是找到nums1中与nums2元素匹配的nums1.size() - 2个数 由题目可知&#xff0c;二者元素具有相差 x 的一一对应关系&#xff0c;如此&#xff0c;不难想到应首先通过对二者排序来构建大致的匹…