当前位置: 首页 > article >正文

零散的知识

1.物化

在SQL中,物化(Materialization)是指将查询结果保存为物理数据结构以供后续使用的过程。这与普通的视图或查询不同,物化视图会存储查询的结果,而不是每次查询时都动态地重新计算数据。

①物化视图
物化视图是一种数据库对象,它存储基于查询语句预先计算的结果数据。与普通视图不同,普通视图只是保存查询语句本身,每次访问时都会重新执行查询,而物化视图则保存查询的实际结果,当用户查询物化视图时,直接返回存储的结果,而不是重新执行查询。

②物化目的
物化的主要目的是提高查询性能。对于复杂的查询或需要跨多个表进行大量计算的情况,物化视图可以通过预计算结果并存储这些结果,减少对基础表的重复查询,从而提高查询响应速度。

③物化总结
物化是指将查询结果预先计算并存储的过程,主要体现在物化视图中。物化视图存储了查询的结果,可以在查询时直接使用这些预先计算的结果,从而提高查询性能,特别是在处理复杂查询、聚合操作或跨表联结时。然而,物化视图的数据需要定期刷新,以确保结果与基础表保持同步。

2.SQL注入

SQL注入的原理是将恶意的SQL代码作为输入传递给应用程序,由于应用程序没有对输入进行正确的过滤或转义,导致这些恶意的SQL代码被数据库解释并执行。这样,攻击者可能会绕过身份验证、获取敏感数据,甚至删除或修改数据库内容。

SELECT * FROM users WHERE username = 'user_input' AND password = 'user_password';

SELECT * FROM users WHERE username = '' OR '1'='1' AND password = '';
这意味着即使密码是错误的,由于条件'1'='1'总为真,攻击者能够绕过身份验证登录到系统中。

3.主键的特性

虽然主键和**唯一键(UNIQUE Key)**都有唯一性约束,但它们有以下几个区别:

主键不能包含空值,而唯一键允许空值。
一个表中只能有一个主键,但可以有多个唯一键。
主键用于唯一标识每一行记录,而唯一键主要用于确保某些字段的值不会重复。

4.ctrl+z、ctrl+c

能用ctrl+c就用ctrl+c,这是代表终止进程
ctrl+z不要用,代表着暂停进程,fg是继续执行。这条指令会导致很多的僵尸进程(最近遇到一个问题,就是因为使用了ctrl+z,导致僵尸进程总是停不掉,还找不到父函数,只能环境重启)

5.map、unordered_map

  • map:底层实现为 红黑树(self-balancing binary search tree)。
  • unordered_map:底层实现为 哈希表(hash table)。
     
  • map:由于是基于红黑树,查找、插入和删除操作的时间复杂度为 O(log n),其中 n 是容器中元素的数量。
  • unordered_map:基于哈希表的 unordered_map,查找、插入和删除操作的平均时间复杂度为 O(1)。不过,最坏情况下,由于哈希冲突,复杂度可能达到 O(n)


http://www.kler.cn/news/337506.html

相关文章:

  • 基于Springboot+Vue的线上课堂系统(含源码数据库)
  • LabVIEW提高开发效率技巧----严格类型化定义
  • 摩尔云今日学习点
  • 梯度消失和梯度爆炸
  • CSS长度单位:px、ex、vh、vw、vmin、vmax、em、rem
  • 抽象工厂模式(Abstract Factory Pattern)
  • 用java编写飞机大战
  • linux 环境下 docker 镜像获取失败, 重新设置docker镜像下载地址
  • Spring Boot实现License生成与校验详解
  • 数据结构--堆的深度解析
  • 【QT Quick】基础语法:变量和属性
  • P3197 [HNOI2008] 越狱
  • Vue.js 框架的知识点目录
  • 【C++ 真题】B2005 字符三角形
  • 【C语言从不挂科到高绩点】26-卡牌游戏必备功能【抽卡功能】
  • 测试用例的编写
  • 服贸会上的科技闪耀之星:璞华易研PLM系统引领产品研发潮流
  • LeetCode-快乐数-Java语言
  • ComfyUI 实战教程:古人画像变真人
  • 【学习笔记】网络设备(华为交换机)基础知识8——查看硬件信息 ② 基础操作