
数据库
刘鸿宇..
用代码改变世界
展开
-
数据库优化
扩展:索引内部原理可以想象成 Dictionary,插入、删除、更新的速度慢了,加上索引也多占用了空间,查询的速度快了。加上索引以后速度提升非常明显。在经常检索的字段上(selectfromPerson whereName=@Name)使用索引提高查询速度。 (2)select 中只 列出必要的字段,而不是。避免隐式类型转换造成的全表扫描,在索引上使用函数也会造成全表扫描(因 为索引只是为字段建立的,一旦使用表达式或者函数,那么索引就是失效了,当然也可以使用“函数索引”、 “表 达式索引”解决这个问题)原创 2021-01-07 13:34:50 · 73 阅读 · 0 评论 -
视图是什么?游标是什么?
视图是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,试图通常是有一个表或者多个表的行或列的子集。对视图的修改不影响基本表。它使得我们获取数据更容易,相比多表查询。游标:是对查询出来的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定行,从结果集的当前行检索一行或多行。可以对结果集当前行做修改。一般不使用游标,但是需要逐条处理数据的时候,游标显得十分重要...原创 2021-01-07 13:33:28 · 245 阅读 · 0 评论 -
事务的特性
原子性事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行一致性事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。隔离性由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数原创 2021-01-07 13:32:48 · 81 阅读 · 0 评论 -
事务是什么,锁是什么?
事务就是被绑定在一起作为一个逻辑工作单元的SQL语句分组,如果任何一个语句操作失败那么整个操作就被失败,以后操作就会回滚到操作前状态,或者是上有个节点。为了确保要么执行,要么不执行,就可以使用事务。要将有组语句作为事务考虑,就需要通过ACID测试,即原子性,一致性,隔离性和持久性。锁:在所以的DBMS中,锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。当然锁还分级别的。...原创 2021-01-07 13:31:49 · 260 阅读 · 0 评论 -
触发器
触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发...原创 2021-01-06 18:22:01 · 76 阅读 · 0 评论 -
索引的作用?索引的优点缺点
索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小...原创 2021-01-06 18:21:25 · 114 阅读 · 0 评论 -
SQLServer中索引的两种类型
聚簇(或者叫做聚集,cluster)索引和非聚簇索引。字典的拼音目录就是聚簇(cluster)索引,笔画目录就是非聚簇索引。这样查询“G到M的汉字”就非常快,而查询“6划到8划的字”则慢。聚簇索引是一种特殊索引,它使数据按照索引的排序顺序存放表中。聚簇索引类似于字典,即所有词条在字典中都以字母顺序排列。聚簇索引实际上重组了表中的数据,所以你只能在表中建立一个聚簇索引。当数据按值的范围查询时,聚簇索引就显得特别有用。因为所有SQLServer都必需先找到所查询范围的第一行,然后依次下去,直到该范围的最后一个原创 2021-01-06 18:20:37 · 216 阅读 · 0 评论 -
数据库三范式
第一范式:字段不能有冗余信息,所有字段都是必不可少的第二范式:满足第一范式并且表必须有主键第三范式:满足第二范式并且表引用其他的表必须通过主键引用原创 2021-01-06 18:17:55 · 65 阅读 · 0 评论