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

零散的知识

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.lryc.cn/news/455484.html

相关文章:

  • Python读取pdf中的文字与表格
  • 【MySQL 08】复合查询
  • 求1000以内的完数
  • sqli-labs less-16 post提交dnslog注入
  • nginx报错|xquic|xqc_engine_create: fail|
  • Java虚拟机(JVM)
  • MQ 架构设计原理与消息中间件详解(三)
  • 大数据新视界 --大数据大厂之 Alluxio 数据缓存系统在大数据中的应用与配置
  • PHP基本语法总结
  • 尚硅谷rabbitmq 2024第30-33节 死信队列 答疑
  • 解锁空间距离计算的多种方式-含前端、空间数据库、后端
  • Windows 开发工具使用技巧 QT使用安装和使用技巧 QT快捷键
  • 【实战教程】SpringBoot全面指南:快速上手到项目实战(SpringBoot)
  • LeetCode讲解篇之1043. 分隔数组以得到最大和
  • Python知识点:结合Python工具,如何使用TfidfVectorizer进行文本特征提取
  • Diffusion models(扩散模型) 是怎么工作的
  • 查找回收站里隐藏的文件
  • [运维]2.elasticsearch-svc连接问题
  • Ajax面试题:(第一天)
  • 数据仓库拉链表
  • 【JVM】实战篇
  • 2024年9月30日--10月6日(ue5肉鸽结束)
  • 【Python游戏开发】贪吃蛇游戏demo
  • pytorch张量基础
  • 深入解析LlamaIndex Workflows【下篇】:实现ReAct模式AI智能体的新方法
  • 要在 Git Bash 中使用 `tree` 命令,下载并手动安装 `tree`。
  • Linux的基本指令(1)
  • JavaEE之多线程进阶-面试问题
  • 费曼学习法没有输出对象怎么办?
  • Hive优化操作(二)