SQLite 中的主键是否需要索引?

2023-10-25数据库问题
39

本文介绍了SQLite 中的主键是否需要索引?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

当一个整数列在 SQLite 表中被标记为主键时,是否也应该为它显式创建索引?SQLite 似乎不会自动为主键列创建索引,但鉴于其目的,它可能无论如何都会对其进行索引?(我会一直在那个专栏上搜索)

字符串主键的情况会有所不同吗?

解决方案

它为您做到了.

一个>

<块引用>

INTEGER PRIMARY KEY 列放在一边,UNIQUE 和 PRIMARY KEY约束是通过在数据库中创建索引来实现的(在与CREATE UNIQUE INDEX"语句相同的方式).这样一个索引像数据库中的任何其他索引一样用于优化查询.因此,通常没有优势(但显着的开销)在一组已经存在的列上创建索引共同受 UNIQUE 或 PRIMARY KEY 约束.

When an integer column is marked as a primary key in an SQLite table, should an index be explicitly created for it as well? SQLite does not appear to automatically create an index for a primary key column, but perhaps it indexes it anyway, given its purpose? (I will be searching on that column all the time).

Would the situation be any different for a string primary key?

解决方案

It does it for you.

INTEGER PRIMARY KEY columns aside, both UNIQUE and PRIMARY KEY constraints are implemented by creating an index in the database (in the same way as a "CREATE UNIQUE INDEX" statement would). Such an index is used like any other index in the database to optimize queries. As a result, there often no advantage (but significant overhead) in creating an index on a set of columns that are already collectively subject to a UNIQUE or PRIMARY KEY constraint.

这篇关于SQLite 中的主键是否需要索引?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

SQL 子句“GROUP BY 1"是什么意思?意思是?

SQL 子句“GROUP BY 1"是什么意思?意思是?

What does SQL clause quot;GROUP BY 1quot; mean?(SQL 子句“GROUP BY 1是什么意思?意思是?)...
2024-04-16 数据库问题
62

如何在MySQL中为每个组选择第一行?

如何在MySQL中为每个组选择第一行?

How to select the first row for each group in MySQL?(如何在MySQL中为每个组选择第一行?)...
2024-04-16 数据库问题
13

MySQL - 获取最低值

MySQL - 获取最低值

MySQL - Fetching lowest value(MySQL - 获取最低值)...
2024-04-16 数据库问题
8

mySQL init 脚本未与 docker-compose 一起运行

mySQL init 脚本未与 docker-compose 一起运行

mySQL init scripts not running with docker-compose(mySQL init 脚本未与 docker-compose 一起运行)...
2024-04-16 数据库问题
14

在 cmakelist.txt 中添加和链接 mysql 库

在 cmakelist.txt 中添加和链接 mysql 库

Add and link mysql libraries in a cmakelist.txt(在 cmakelist.txt 中添加和链接 mysql 库)...
2024-04-16 数据库问题
41

考勤数据库的良好数据库设计(架构)是什么?

考勤数据库的良好数据库设计(架构)是什么?

What is a good database design (schema) for a attendance database?(考勤数据库的良好数据库设计(架构)是什么?)...
2024-04-16 数据库问题
7

热门文章

1ORA-01747: 无效的 user.table.column、table.column 或列规范 2ORA-01461: 只能为插入到 LONG 列而绑定 LONG 值-查询时发生 3INSERT 语句与 FOREIGN KEY 约束冲突 4MySql 错误:无法更新存储函数/触发器中的表,因为它已被调用此存储函数/触发器的语句使用 5MySQL:将逗号分隔的列表拆分为多行 6sqlite3 在数据库中插入和读取 BLOB 数据 7ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 8MySQL 错误:UPDATE 和 LIMIT 的错误使用

热门精品源码

最新VIP资源

1多功能实用站长工具箱html功能模板 2多风格简历在线生成程序网页模板 3论文相似度查询系统源码 4响应式旅游景点宣传推广页面模板 5在线起名宣传推广网站源码 6酷黑微信小程序网站开发宣传页模板 7房产销售交易中介网站模板 8小学作业自动生成程序