SQL Server 2022从入门到精通

news2024/11/20 10:45:18

  大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。

  本文主要介绍了SQL Server 2022从入门到精通,希望能对学习数据库,尤其是学习SQL Server的同学们有所帮助。

在这里插入图片描述

文章目录

  • 1. 前言
  • 2. 书籍推荐
    • 2.1 本书特色
    • 2.2 本书作者
    • 2.3 本书目录
    • 2.4 适合读者
  • 3. 购买链接

1. 前言

  SQL Server 2022作为微软最新推出的关系型数据库管理系统,在企业级数据管理领域占据着至关重要的地位。它不仅延续了SQL Server系列的强大功能和可靠性,还在多个方面实现了突破性的创新。
在这里插入图片描述

  SQL Server 2022在当今数据驱动的商业环境中扮演着至关重要的角色。作为数字化转型的核心引擎,它为企业提供了强大的数据处理和分析能力,成为推动业务创新的关键力量。其混合云解决方案无缝集成了云端和本地部署,满足了现代企业对灵活性和可扩展性的迫切需求。在网络安全日益复杂的今天,SQL Server 2022还提供了先进的安全特性,有效保护企业的关键数据资产。

  在市场中,SQL Server的地位同样举足轻重。根据Gartner的魔力象限报告,它在操作型数据库管理系统市场中一直保持领导者地位。其应用范围极其广泛,无论是中小企业还是大型跨国公司,SQL Server 2022都能提供适合的解决方案,覆盖各个行业和应用场景。此外,微软庞大的合作伙伴网络和活跃的开发者社区为SQL Server 2022提供了丰富的第三方工具和资源支持,形成了一个强大而富有活力的生态系统。这些因素共同奠定了SQL Server 2022在数据库管理系统市场中的重要地位,使其成为企业数据管理的首选解决方案之一。

  SQL Server 2022带来了众多令人兴奋的新特性,显著提升了性能、可靠性、安全性和开发效率。以下是一些主要的新特性:

  • 智能查询处理:引入了新的查询优化技术,如参数敏感性计划优化和批处理模式内存授予反馈,大幅提升查询性能。
  • 链接服务器到Azure Synapse Analytics:允许直接查询Azure Synapse Analytics中的数据,实现无缝的混合云体验。
  • 数据虚拟化:通过PolyBase增强了对外部数据源的支持,包括Oracle、Teradata和MongoDB等。
  • Ledger技术:引入区块链技术,为数据提供不可篡改的审计跟踪,增强数据完整性和安全性。
  • 云集成:深度集成Azure服务,如Azure Purview用于数据治理,Azure Synapse Link用于实时分析。
  • Always Encrypted with secure enclaves:进一步增强了数据加密能力,支持更多的加密场景。
  • UTF-8支持:改进了对国际化数据的支持,优化存储效率。
  • 可用性组的增强:改进了读取扩展可用性组的性能和可用性。
  • Query Store增强:提供了更多的性能监控和优化工具,帮助管理员更好地诊断和解决性能问题。

2. 书籍推荐

  本书是面向SQL Server 2022初学者的一本高价值的书籍。本书系统全面、示例丰富、图文并茂、步骤清晰、通俗易懂、条理清晰。通过本书的学习,读者能快速理解SQL Server 2022的技术构成及操作方法,快速上手使用并设计SQL Server数据库。

  本书注重实用,可操作性强,详细讲解每一个SQL Server 2022的知识点、操作方法和技巧,清晰阐述示例的用法及其作用,使读者能在最短的时间内有效地掌握SQL Server 2022数据库的应用。

在这里插入图片描述

  《SQL Server 2022从入门到精通:视频教学超值版》共分20章,内容包括SQL Server 2022的安装与配置、数据库的操作、数据表的操作、Transact-SQL语言基础、Transact-SQL语句的查询与应用、认识函数、Transact-SQL查询、数据的更新、规则、默认和完整性约束、创建和使用索引、事务和锁、游标、使用存储过程、视图操作、触发器、SQL Server 2022的安全机制、数据库的备份与恢复、数据库的性能优化、企业人事管理系统数据库设计、网上购物商城数据库设计。

2.1 本书特色

  • 内容全面:知识点由浅入深,涵盖了所有SQL Server 2022的基础知识点以及数据库优化和设计技术,使读者可以由浅入深地掌握SQL Server 2022开发技术。

  • 图文并茂:在介绍案例的过程中,每一个操作均有对应步骤和过程说明。这种图文结合的方式使读者在学习过程中能够直观、清晰地看到操作的过程以及效果,便于读者更快地理解和掌握。

  • 易学易用:颠覆传统“看”书的观念,变成一本能“操作”的图书。

  • 案例丰富:把知识点融汇于系统的案例实训中,并且结合综合案例进行讲解和拓展,进而使读者“知其然,并知其所以然”。本书能让读者在实战应用中掌握SQL Server 2022的每一项技术。

  • 提示技巧:本书对读者在学习过程中可能会遇到的疑难问题以“提示”和“技巧”的形式进行了说明,以免读者在学习的过程中走弯路。

  • 超值资源:随书配套源码、PPT课件、教学视频、习题及答案、教学大纲、作者微信群答疑服务,使本书真正体现“自学无忧”,令其物超所值。

2.2 本书作者

  王英英,从事Web应用开发多年,精通多种编程语言,对数据库技术有深入研究。在Web前端、编程语言、数据库开发方面有着丰富的经验,并已出版过多本相关畅销书,受广大读者熟悉和认可。其创作的部分书包括:《Python编程从零开始学(视频教学版)》《HTML5+CSS3+JavaScript前端开发从零开始学(视频教学版)》《MySQL 8从入门到精通(视频教学版)》《HTML5+CSS3+JavaScript+jQuery Mobile移动网站与App开发(视频教学版)》《Oracle 19c从入门到精通(视频教学超值版)》《SQL Server 2019从入门到精通(视频教学超值版)》《MySQL 5.7从零开始学(视频教学版)》。

2.3 本书目录

目    录

第 1 章  SQL Server 2022的安装与配置 1

1.1  认识SQL Server 2022 1

1.2  SQL Server 2022的组成 1

1.2.1  SQL Server 2022的数据库引擎 1

1.2.2  分析服务 2

1.2.3  集成服务 2

1.2.4  报表服务 2

1.3  安装SQL Server 2022 2

1.3.1  安装环境需求 2

1.3.2  安装SQL Server 2022 3

1.4  安装SQL Server Management Studio 9

1.5  SSMS的基本操作 11

1.5.1  SSMS的启动与连接 11

1.5.2  使用模板资源管理器 13

1.5.3  配置服务器的属性 14

1.5.4  查询编辑器 162 章  数据库的操作 19

2.1  数据库的组成 19

2.1.1  数据库文件 20

2.1.2  日志文件 20

2.2  系统数据库 20

2.2.1  master数据库 20

2.2.2  model数据库 20

2.2.3  msdb数据库 21

2.2.4  tempdb数据库 21

2.3  创建数据库 21

2.3.1  使用对象资源管理器创建数据库 21

2.3.2  使用Transact-SQL创建数据库 24

2.4  管理数据库 27

2.4.1  修改数据库 27

2.4.2  修改数据库容量 28

2.4.3  增加数据库容量 29

2.4.4  缩减数据库容量 31

2.4.5  查看数据库信息 31

2.4.6  数据库更名 32

2.4.7  删除数据库 333 章  数据表的操作 35

3.1  SQL Server 2022数据库对象 35

3.2  创建数据表 36

3.2.1  数据类型 37

3.2.2  使用对象资源管理器创建表 44

3.2.3  使用Transact-SQL创建表 45

3.3  管理数据表 46

3.3.1  修改表字段 47

3.3.2  修改表约束 50

3.3.3  查看表中的有关信息 55

3.3.4  删除表 564 章  Transact-SQL语言基础 58

4.1  Transact-SQL概述 58

4.1.1  什么是Transact-SQL 59

4.1.2  Transact-SQL语法的约定 59

4.2  如何给标识符起名 60

4.3  常量 62

4.3.1  数字常量 62

4.3.2  字符串常量 63

4.3.3  日期和时间常量 63

4.3.4  符号常量 63

4.4  变量 64

4.4.1  全局变量 64

4.4.2  局部变量 66

4.4.3  批处理和脚本 67

4.5  运算符和表达式 69

4.5.1  算术运算符 69

4.5.2  比较运算符 69

4.5.3  逻辑运算符 70

4.5.4  连接运算符 70

4.5.5  按位运算符 70

4.5.6  运算符的优先级 71

4.5.7  什么是表达式 71

4.5.8  Transact-SQL表达式的分类 71

4.6  Transact-SQL利器——通配符 72

4.7  Transact-SQL语言中的注释 735 章  轻松掌握Transact-SQL语句 74

5.1  数据定义语言 74

5.1.1  CREATE的应用 74

5.1.2  DROP的功能 77

5.1.3  ALTER的功能 78

5.2  数据操作语言 80

5.2.1  数据的插入——INSERT 80

5.2.2  数据的更改——UPDATE 81

5.2.3  数据的删除——DELETE 82

5.2.4  数据的查询——SELECT 83

5.3  数据控制语言 88

5.3.1  授予权限操作——GRANT 88

5.3.2  拒绝权限操作——DENY 89

5.3.3  收回权限操作——REVOKE 89

5.4  其他基本语句 89

5.4.1  数据声明——DECLARE 89

5.4.2  数据赋值——SET 90

5.4.3  数据输出——PRINT 91

5.5  流程控制语句 91

5.5.1  BEGIN...END语句 91

5.5.2  IF...ELSE语句 92

5.5.3  CASE语句 92

5.5.4  WHILE语句 94

5.5.5  GOTO语句 95

5.5.6  WAITFOR语句 96

5.5.7  RETURN语句 96

5.6  批处理语句 976 章  认识函数 99

6.1  字符串函数 99

6.1.1  CHAR()函数 99

6.1.2  LEFT()函数 100

6.1.3  RIGHT()函数 100

6.1.4  LTRIM()函数 100

6.1.5  RTRIM()函数 100

6.1.6  STR()函数 101

6.1.7  REVERSE()函数 101

6.1.8  LEN()函数 101

6.1.9  CHARINDEX()函数 102

6.1.10  SUBSTRING()函数 102

6.1.11  LOWER()函数 102

6.1.12  UPPER()函数 103

6.1.13  REPLACE(s,s1,s2)函数 103

6.2  数学函数 103

6.2.1  ABS(x)函数和PI()函数 103

6.2.2  SQRT(x)函数 104

6.2.3  获取随机数的函数RAND()和RAND(x) 104

6.2.4  四舍五入函数ROUND(x,y) 105

6.2.5  符号函数SIGN(x) 105

6.2.6  获取整数的函数CEILING(x)和FLOOR(x) 105

6.2.7  幂运算函数POWER(x,y)、SQUARE (x)和EXP(x) 106

6.2.8  对数运算函数LOG(x)和LOG10(x) 106

6.2.9  角度与弧度相互转换的函数RADIANS(x)和DEGREES(x) 107

6.3  数据类型转换函数 107

6.4  文本和图像函数 108

6.4.1  TEXTPTR()函数 108

6.4.2  TEXTVALID()函数 109

6.5  日期和时间函数 109

6.5.1  获取系统当前日期的函数GETDATE() 109

6.5.2  返回UTC日期的函数UTCDATE() 109

6.5.3  获取天数的函数DAY() 110

6.5.4  获取月份的函数MONTH() 110

6.5.5  获取年份的函数YEAR() 110

6.5.6  计算日期和时间的函数DATEADD(dp,num,d) 110

6.6  系统函数 111

6.6.1  返回表中指定字段的长度值 111

6.6.2  返回表中指定字段的名称 111

6.6.3  返回数据表达式的数据的实际长度 112

6.6.4  返回数据库的名称 112

6.6.5  返回数据库的用户名 1127 章  Transact-SQL查询 113

7.1  查询工具的使用 113

7.1.1  编辑查询 113

7.1.2  查询结果的显示方法 114

7.2  使用SELECT进行查询 115

7.2.1  使用星号和列名 116

7.2.2  使用DISTINCT取消重复 117

7.2.3  使用TOP返回前n行 118

7.2.4  修改列标题 119

7.2.5  在查询结果集中显示字符串 119

7.2.6  查询的列为表达式 120

7.3  使用WHERE子句进行条件查询 120

7.3.1  使用关系表达式查询 121

7.3.2  使用BETWEEN AND表示范围 122

7.3.3  使用IN关键字 122

7.3.4  使用LIKE关键字 123

7.3.5  使用IS NULL查询空值 125

7.3.6  使用EXISTS关键字 126

7.3.7  使用ORDER BY排序 127

7.3.8  使用GROUP BY分组 128

7.3.9  使用HAVING对分组结果进行过滤 129

7.3.10  使用UNION合并查询结果集 130

7.4  使用聚合函数统计汇总 131

7.4.1  使用SUM()求列的和 132

7.4.2  使用AVG()求列平均值 132

7.4.3  使用MAX()求列最大值 133

7.4.4  使用MIN()求列最小值 134

7.4.5  使用COUNT()统计 134

7.5  嵌套查询 135

7.5.1  使用比较运算符 136

7.5.2  使用IN关键字 136

7.5.3  使用ANY、SOME和ALL关键字 137

7.5.4  使用EXISTS关键字 138

7.6  多表连接查询 139

7.6.1  等值连接 140

7.6.2  不等连接 140

7.6.3  带选择条件的连接 141

7.6.4  自连接 141

7.7  外连接 142

7.7.1  左外连接 142

7.7.2  右外连接 143

7.7.3  全外连接 143

7.8  使用排序函数 143

7.9  动态查询 1458 章  数据的更新 147

8.1  插入数据——INSERT 147

8.1.1  插入单行数据 148

8.1.2  插入多行数据 150

8.2  修改数据——UPDATE 151

8.2.1  修改单行数据 151

8.2.2  修改多行数据 152

8.3  删除数据——DELETE 153

8.3.1  删除部分数据 153

8.3.2  删除表中所有数据 1539 章  规则、默认和完整性约束 154

9.1  规则和默认概述 154

9.2  规则的基本操作 154

9.2.1  创建规则 154

9.2.2  把自定义规则绑定到列 155

9.2.3  验证规则的作用 155

9.2.4  取消规则绑定 156

9.2.5  删除规则 156

9.3  默认的基本操作 156

9.3.1  创建默认 157

9.3.2  把自定义的默认值绑定到列 157

9.3.3  验证默认值的作用 157

9.3.4  取消默认值的绑定 158

9.3.5  删除默认值 158

9.4  完整性约束 158

9.4.1  主键约束 159

9.4.2  外键约束 162

9.4.3  唯一性约束 165

9.4.4  CHECK约束 166

9.4.5  DEFAULT约束 166

9.4.6  NOT NULL约束 16610 章  创建和使用索引 167

10.1  索引的含义和特点 167

10.2  索引的分类 168

10.3  索引的设计原则 169

10.4  创建索引 170

10.4.1  使用对象资源管理器创建索引 170

10.4.2  使用Transact-SQL语句创建索引 171

10.5  管理和维护索引 174

10.5.1  显示索引信息 174

10.5.2  重命名索引 176

10.5.3  删除索引 17711 章  事务和锁 178

11.1  事务管理 178

11.1.1  事务的原理 178

11.1.2  事务管理的常用语句 179

11.1.3  事务的隔离级别 180

11.1.4  事务的应用案例 181

11.2182

11.2.1  锁的内涵与作用 182

11.2.2  可锁定资源与锁的类型 183

11.2.3  死锁 184

11.2.4  锁的应用案例 18512 章  游标 189

12.1  认识游标 189

12.1.1  游标的概念 189

12.1.2  游标的优点 189

12.1.3  游标的分类 190

12.2  游标的基本操作 191

12.2.1  声明游标 191

12.2.2  打开游标 193

12.2.3  读取游标中的数据 193

12.2.4  关闭游标 194

12.2.5  释放游标 195

12.3  游标的运用 195

12.3.1  使用游标变量 196

12.3.2  用游标为变量赋值 196

12.3.3  用ORDER BY子句改变游标中行的顺序 197

12.3.4  用游标修改数据 198

12.3.5  用游标删除数据 199

12.4  使用系统存储过程管理游标 200

12.4.1  sp_cursor_list存储过程 200

12.4.2  sp_describe_cursor存储过程 201

12.4.3  sp_describe_cursor_columns存储过程 202

12.4.4  sp_describe_cursor_tables存储过程 20413 章  存储过程和自定义函数 206

13.1  存储过程概述 206

13.2  存储过程分类 207

13.2.1  系统存储过程 207

13.2.2  自定义存储过程 207

13.2.3  扩展存储过程 208

13.3  创建存储过程 208

13.3.1  如何创建存储过程 208

13.3.2  调用存储过程 211

13.3.3  创建带输入参数的存储过程 212

13.3.4  创建带输出参数的存储过程 214

13.4  管理存储过程 215

13.4.1  修改存储过程 215

13.4.2  查询存储过程 217

13.4.3  重命名存储过程 218

13.4.4  删除存储过程 219

13.5  扩展存储过程 220

13.6  自定义函数 221

13.6.1  创建标量函数 222

13.6.2  创建表值函数 223

13.6.3  删除函数 22414 章  视图操作 225

14.1  视图概述 225

14.1.1  视图的概念 225

14.1.2  视图的分类 226

14.1.3  视图的优点和作用 226

14.2  创建视图 227

14.2.1  使用视图设计器创建视图 227

14.2.2  使用Transact-SQL命令创建视图 229

14.3  修改视图 230

14.4  查看视图信息 231

14.5  使用视图修改数据 232

14.5.1  通过视图向基本表中插入数据 233

14.5.2  通过视图修改基本表中的数据 233

14.5.3  通过视图删除基本表中的数据 234

14.6  删除视图 23515 章  触发器 236

15.1  触发器概述 236

15.1.1  什么是触发器 236

15.1.2  触发器的作用 237

15.1.3  触发器分类 237

15.2  创建DML触发器 238

15.2.1  INSERT触发器 238

15.2.2  DELETE触发器 240

15.2.3  UPDATE触发器 241

15.2.4  替代触发器 242

15.2.5  允许使用嵌套触发器 243

15.2.6  递归触发器 244

15.3  创建DDL触发器 245

15.3.1  创建DDL触发器的语法 245

15.3.2  创建服务器作用域的DDL触发器 245

15.4  管理触发器 246

15.4.1  查看触发器 246

15.4.2  修改触发器 247

15.4.3  删除触发器 248

15.4.4  启用和禁用触发器 24916 章  SQL Server 2022的安全机制 250

16.1  SQL Server 2022的安全机制概述 250

16.1.1  SQL Server 2022的安全机制简介 250

16.1.2  基本安全术语 252

16.2  安全验证方式 253

16.2.1  Windows身份验证模式 253

16.2.2  混合模式 253

16.2.3  设置验证模式 254

16.3  SQL Server 2022登录名 254

16.3.1  创建登录账户 255

16.3.2  修改登录账户 260

16.3.3  删除登录账户 262

16.4  SQL Server 2022的角色与权限 262

16.4.1  固定服务器角色 263

16.4.2  数据库角色 263

16.4.3  自定义数据库角色 264

16.4.4  应用程序角色 267

16.4.5  将登录指派到角色 268

16.4.6  将角色指派到多个登录账户 269

16.4.7  权限管理 27017 章  数据库的备份与恢复 274

17.1  备份与恢复介绍 274

17.1.1  备份类型 274

17.1.2  恢复模式 275

17.1.3  配置恢复模式 276

17.2  备份设备 277

17.2.1  备份设备类型 277

17.2.2  创建备份设备 277

17.2.3  查看备份设备 279

17.2.4  删除备份设备 279

17.3  使用Transact-SQL语言备份数据库 279

17.3.1  完整备份与差异备份 280

17.3.2  文件和文件组备份 282

17.3.3  事务日志备份 284

17.4  在SQL Server Management Studio 中还原数据库 284

17.4.1  还原数据库的方式 284

17.4.2  还原数据库前要注意的事项 285

17.4.3  还原数据库备份 286

17.4.4  还原文件和文件组备份 288

17.5  用Transact-SQL语言还原数据库 290

17.5.1  完整备份还原 290

17.5.2  差异备份还原 292

17.5.3  事务日志备份还原 292

17.5.4  文件和文件组备份还原 293

17.5.5  将数据库还原到某个时间点 293

17.6  建立自动备份的维护计划 295

17.7  通过Always Encrypted安全功能为数据加密 297

17.8  动态数据屏蔽 30018 章  数据库的性能优化 303

18.1  优化查询 303

18.1.1  优化查询语句 303

18.1.2  优化索引 305

18.1.3  其他的优化策略 305

18.2  优化SQL Server服务器硬件 306

18.3  性能优化机制 306

18.3.1  数据缓存 306

18.3.2  查看内存消耗情况 307

18.3.3  清空缓存 309

18.3.4  强制重新编译执行计划 309

18.4  性能分析工具SQL Server Profiler 31019 章  设计企业人事管理系统数据库 313

19.1  需求分析 313

19.2  系统功能结构 313

19.3  数据库设计 314

19.3.1  数据库实体E-R图 314

19.3.2  数据库表的设计 31720 章  设计网上购物商城数据库 320

20.1  系统分析 320

20.1.1  系统总体设计 320

20.1.2  系统界面设计 321

20.2  系统主要功能 322

20.3  数据库与数据表设计 322

20.3.1  数据库实体E-R图 322

20.3.2  数据库分析 324

20.3.3  创建数据表 324

2.4 适合读者

  《SQL Server 2022从入门到精通:视频教学超值版》适合SQL Server初学者、数据库设计人员、数据库应用开发人员、数据库系统管理员,也适合作为高等院校或高职高专数据库课程的教材。

3. 购买链接

  本书的京东购买链接为:SQL Server 2022从入门到精通(视频教学超值版)(数据库技术丛书)。

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

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

相关文章

架构是怎样练成的-楼宇监控系统案例

目录 概要 项目背景 原系统设计方案 改进后的设计方案 小结 概要 绝大多数人掌握的架构都是直接学习,慢慢地才能体会到一个架构的好处。架构是一种抽象,是为了复用目的而对代码做的抽象。通过一个项目的改造,理解架构是如何产生的&…

[C++][设计模式][抽象工厂]详细讲解

目录 1.动机2.模式定义3.要点总结4.代码感受1.代码一2.代码二 -- 工厂方法3.代码三 -- 抽象工厂 1.动机 在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时,由于需求的变化,往往存在更多系列对象的创建工作如何应…

【ARM】MDK工程切换高版本的编译器后出现error A1137E报错

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决工程从Compiler 5切换到Compiler 6进行编译时出现一些非语法问题上的报错。 2、 问题场景 对于一些使用Compiler 5进行编译的工程,要切换到Compiler 6进行编译的时候,原本无任何报错警告…

Redis-哨兵模式-主机宕机-推选新主机的过程

文章目录 1、为哨兵模式准备配置文件2、启动哨兵3、主机6379宕机3.4、查看sentinel控制台日志3.5、查看6380主从信息 4、复活63794.1、再次查看sentinel控制台日志 1、为哨兵模式准备配置文件 [rootlocalhost redis]# ll 总用量 244 drwxr-xr-x. 2 root root 150 12月 6 2…

免费APP分发平台:小猪APP分发如何解决开发者的痛点

你是否曾为自己开发的APP找不到合适的分发平台而烦恼?你是否因为高昂的分发费用而望而却步?放心吧,你并不是一个人。很多开发者都面临同样的问题。但别担心,小猪APP分发来了,它可以帮你解决这些问题。 小猪app封装www…

微软结束将数据中心置于海底的实验

2016 年,微软 宣布了一项名为"纳蒂克项目"(Project Natick)的实验。基本而言,该项目旨在了解数据中心能否在海洋水下安装和运行。经过多次较小规模的测试运行后,该公司于 2018 年春季在苏格兰海岸外 117 英尺…

《Redis设计与实现》阅读总结-2

第 7 章 压缩列表 1. 概念: 压缩列表是列表键和哈希键的底层实现之一。当一个列表键只包含少量列表项,并且每个列表项是小整数值或长度比较短的字符串,那么Redis就会使用压缩类别来做列表键的底层实现。哈希键里面包含的所有键和值都是最小…

基于ESP8266串口WIFI模块ESP-01S在AP模式(即发射无线信号( WiFi))下实现STC单片机与手机端网路串口助手相互通信功能

基于ESP8266串口WIFI模块ESP-01S在AP模式(即发射无线信号( WiFi))下实现STC单片机与手机端网路串口助手相互通信功能 ESP8266_01S引脚功能图ESP8266_01S原理图ESP8266_01S尺寸图检验工作1、USB-TTL串口工具(推荐使用搭载CP2102芯片的安信可USB-T1串口)与ESP8266_01S WiFi…

Websocket在Java中的实践——最小可行案例

WebSocket是一种先进的网络通信协议,它允许在单个TCP连接上进行全双工通信,即数据可以在同一时间双向流动。WebSocket由IETF标准化为RFC 6455,并且已被W3C定义为JavaScript API的标准,成为现代浏览器的重要特性之一。 WebSocket的…

代码随想录——跳跃游戏(Leecode55)

题目链接 贪心 class Solution {public boolean canJump(int[] nums) {int cover 0;if(nums.length 1){return true;}// 只有一个元素可以达到for(int i 0; i < cover; i){// 在cover内选择跳跃步数cover Math.max(i nums[i],cover);if(cover > nums.length - 1)…

C++进修——C++核心编程

内存分区模型 C程序在执行时&#xff0c;将内存大方向划分为4个区域 代码区&#xff1a;存放函数体的二进制编码&#xff0c;由操作系统进行管理全局区&#xff1a;存放全局变量和静态变量以及常量栈区&#xff1a;由编译器自动分配释放&#xff0c;存放函数的参数值&#xff…

如何在FastAPI服务器中添加黑名单和白名单实现IP访问控制

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 添加黑名单功能步骤1:安装依赖步骤2:创建FastAPI应用步骤3:添加黑名单📝 添加白名单功能步骤1:创建白名单列表步骤2:添加白名单检查⚓️ 相关链接 ⚓️📖 介绍 📖 在现代网络应用开发中,为了增强…

【推荐】Prometheus+Grafana企业级监控预警实战

新鲜出炉&#xff01;&#xff01;&#xff01;PrometheusGrafanaAlertmanager springboot 企业级监控预警实战课程&#xff0c;从0到1快速搭建企业监控预警平台&#xff0c;实现接口调用量统计&#xff0c;接口请求耗时统计…… 详情请戳 https://edu.csdn.net/course/detai…

深度挖掘数据资产,洞察业务先机:利用先进的数据分析技术,精准把握市场趋势,洞悉客户需求,为业务决策提供有力支持,实现持续增长与创新

在当今日益激烈的商业竞争环境中&#xff0c;企业想要实现持续增长与创新&#xff0c;必须深入挖掘和有效运用自身的数据资产。数据不仅是企业运营过程中的副产品&#xff0c;更是洞察市场趋势、理解客户需求、优化业务决策的重要资源。本文将探讨如何通过利用先进的数据分析技…

黑马苍穹外卖7 用户下单+订单支付(微信小程序支付流程图)

地址簿 数据库表设计 就是基本增删改查&#xff0c;与前面的类似。 用户下单 用户点餐业务流程&#xff1a; 购物车-订单提交-订单支付-下单成功 展示购物车数据&#xff0c;不需要提交到后端 数据库设计&#xff1a;两个表【订单表orders&#xff0c;订单明细表order_d…

智慧车库管理系统

摘 要 随着城市化进程的不断加快&#xff0c;私家车数量的快速增长给城市交通带来了巨大的挑战&#xff0c;停车问题成为城市交通管理中的一大难题。车辆停车时&#xff0c;在停车场寻找停车位耗时过久&#xff0c;不仅仅浪费用户的时间&#xff0c;还可能引起交通拥堵。城市停…

考研数学一有多难?130+背后的残酷真相

考研数学一很难 大家平时在网上上看到很多人说自己考了130&#xff0c;其实这些人只占参加考研数学人数的极少部分&#xff0c;有个数据可以展示出来考研数学到底有多难&#xff1a; 在几百万考研大军中&#xff0c;能考到120分以上的考生只有2%。绝大多数人的分数集中在30到…

构建实用的Flutter文件列表:从简到繁的完美演进

前言&#xff1a;为什么我们需要文件列表&#xff1f; 在现代科技发展迅速的时代&#xff0c;我们的电脑、手机、平板等设备里积累了大量的文件&#xff0c;这些文件可能是我们的照片、文档、音频、视频等等。然而&#xff0c;当文件数量增多时&#xff0c;我们如何快速地找到…

Arduino平台软硬件原理及使用——开源库的使用

文章目录&#xff1a; 一、库文件的下载及导入 二、库文件源代码说明 三、库文件应用举例 一、库文件的下载及导入 有关arduino开源库的导入有两种方案&#xff1a; 1.第一种方案需要借助arduino.cc网站来进行查询下载&#xff0c;然后在Arduino软件中进行导入。 2.第二种方案则…

判断对象是否为空的多种方式

判断对象是否为空 网上也有许多方法&#xff0c;这里来整理一下 一、Object.keys(obj) ES6 写法&#xff1a; const data {}; const arr Object.keys(data); console.log(arr.length); // 0二、JSON.stringify() const obj {}; const arr JSON.stringify(obj); console.…