首页博客网络编程
创建和删除 SQL 索引
摘要

内容

SQL 中的索引解释

在我们开始解释删除和创建 SQL 索引所需的语法之前,您需要首先了解 SQL 中的索引是什么。简而言之,它是一种独特的数据库结构,可简化搜索并使查询执行速度更快。

什么是 SQL 中的索引

SQL 中的索引充当特定的指针,可帮助您更快地找到索引数据。虽然它对表中的实际数据没有影响,但它确实需要一些磁盘空间来保留索引数据的副本。

以这种方式,SQL索引的工作方式与本书末尾的索引部分非常相似,后者占用了页面,但不包含原始信息。

何时在 SQL 中使用索引

SQL 中的索引有助于加快使用 WHERE 和 SELECT 子句的速度。但是,它会降低用于数据输入的 UPDATE 和 INSERT 语句的性能。

在特定列下,使用索引最有意义:

  • 几乎不保存 NULL 值

  • 保存相当宽的

  • 通常与 WHERE 一起使用

  • 通常用于连接

  • 不会经常更新

SQL 中索引的语法

要为特定列分配索引,您需要使用语句并定义三个参数:CREATE INDEX

  • 索引的名称

  • 表的名称

  • 列的名称

复制

CREATE INDEX indexnameON tablename (column1, column2, ...);

在下面的代码示例中,您可以看到一个名为分配给表中列的索引:idx_lastnameLastNamePersons

复制

CREATE INDEX idx_lastnameON Persons (LastName);

匹配索引

可以将相同的 SQL 索引分配给多个列。在括号中列出它们,并用逗号将它们分开:

复制

CREATE INDEX idx_lastnameON Persons (LastName, FirstName);

唯一索引

还可以在 SQL 中分配唯一索引。语法几乎相同:

复制

CREATE UNIQUE INDEX indexnameON tablename (column);

通常使用唯一的 SQL 索引来保证列数据的完整性。如果将唯一索引分配给单个列,则它必须包含唯一。通过创建多列唯一索引,可以确保每个值组合都是唯一的。

删除索引

若要在 SQL 中删除索引,请遵循以下语法示例:

复制

DROP INDEX [IF EXISTS] indexnameON tablename;

该语句将从数据库中删除指定的索引。DROP INDEX

如果尝试删除不存在的索引,系统将触发错误。要防止这种情况,请使用语句。IF EXISTS

注意:每个数据库管理系统都可以有自己的索引管理语法 - 请确保您仔细阅读了您选择的语法。


声明提示:若要转载请务必保留原文链接,申明来源,谢谢合作!

本文链接:https://www.gaoxuejun173.top/blog/274

广告位

本文配乐
来说两句吧

该文章已禁止评论

最新评论

广告位