- HSQLDB 教程
- HSQLDB - 首页
- HSQLDB - 简介
- HSQLDB - 安装
- HSQLDB - 连接
- HSQLDB - 数据类型
- HSQLDB - 创建表
- HSQLDB - 删除表
- HSQLDB - 插入查询
- HSQLDB - 选择查询
- HSQLDB - WHERE 子句
- HSQLDB - 更新查询
- HSQLDB - DELETE 子句
- HSQLDB - LIKE 子句
- HSQLDB - 排序结果
- HSQLDB - 连接查询
- HSQLDB - NULL 值
- HSQLDB - 正则表达式
- HSQLDB - 事务
- HSQLDB - ALTER 命令
- HSQLDB - 索引
- HSQLDB 有用资源
- HSQLDB - 快速指南
- HSQLDB - 有用资源
- HSQLDB - 讨论
HSQLDB - 索引
数据库索引是一种数据结构,它可以提高表中操作的速度。索引可以使用一个或多个列创建,为快速随机查找和有效排序访问记录提供基础。
创建索引时,应考虑哪些列将用于编写 SQL 查询,并在这些列上创建一个或多个索引。
实际上,索引也是一种表格,它保存主键或索引字段以及指向实际表中每个记录的指针。
用户看不到索引。它们仅用于加速查询,并将由数据库搜索引擎用于快速定位记录。
在具有索引的表上,INSERT 和 UPDATE 语句需要更多时间,而 SELECT 语句在这些表上运行速度更快。原因是在插入或更新时,数据库也需要插入或更新索引值。
简单索引和唯一索引
您可以在表上创建一个唯一索引。唯一索引意味着两行不能具有相同的索引值。以下是创建表索引的语法。
CREATE UNIQUE INDEX index_name ON table_name (column1, column2,...);
您可以使用一个或多个列来创建索引。例如,使用 tutorial_author 在 tutorials_tbl 上创建索引。
CREATE UNIQUE INDEX AUTHOR_INDEX ON tutorials_tbl (tutorial_author)
您可以在表上创建简单索引。只需从查询中省略 UNIQUE 关键字即可创建简单索引。简单索引允许表中出现重复值。
如果要按降序排列列中的值,可以在列名后添加保留字 DESC。
CREATE UNIQUE INDEX AUTHOR_INDEX ON tutorials_tbl (tutorial_author DESC)
ALTER 命令添加和删除索引
有四种类型的语句用于向表中添加索引:
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list) − 此语句添加主键,这意味着索引值必须唯一且不能为 NULL。
ALTER TABLE tbl_name ADD UNIQUE index_name (column_list) − 此语句创建一个索引,其值必须唯一(NULL 值除外,NULL 值可以多次出现)。
ALTER TABLE tbl_name ADD INDEX index_name (column_list) − 这将添加一个普通索引,其中任何值都可能出现多次。
ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list) − 这将创建一个特殊的 FULLTEXT 索引,用于文本搜索。
以下是向现有表中添加索引的查询。
ALTER TABLE testalter_tbl ADD INDEX (c);
您可以使用 DROP 子句以及 ALTER 命令删除任何索引。以下是删除上面创建的索引的查询。
ALTER TABLE testalter_tbl DROP INDEX (c);
显示索引信息
您可以使用 SHOW INDEX 命令列出与表关联的所有索引。垂直格式输出(由 \G 指定)通常与此语句一起使用很有用,以避免长行换行。
以下是显示关于表的索引信息的通用语法。
SHOW INDEX FROM table_name\G