数据库规定主键值不能重用的目的是什么?
一、数据库规定主键值不能重用的目的是什么
1.主键值可以重用。
2.在很多已有的系统中,比如各种开源网站、论坛,由于数据库在设计时,业务与主键值耦合了,这种情况下,重用主键值会让系统发生业务错误。比如某查询是以主键是否存在来判定查询结果,重用主键会造成误判。
3.对于自增主键,主键值也可以重用,但问题是,如何重用?你会发现这非常麻烦。
SQL Server 中的 “自动增长列”(标识列 / identity 列),既然是 “自动增长”,那当然是不能再 “减少” 的了,否则怎么能叫这个名字呢?好吧,说正经的,实现起来比较简单,只要记录当时该列中最大的值且加上一个步长(默认为1)就可以了,否则还得花费时间去搜索那个 “空隙”。尤其是在并发的情况下,比较容易保证新插入的记录中这一列的值是正确的。设置为 “标识列” 的缺点就是,这一列的值只能是整型。另外,只要这一列的值都是整型,那么对于计算机来说占用的存储空间都是一样的,并没有 “浪费资源”。
延伸阅读:
二、什么是数据库和数据库管理系统
数据库的应用非常广泛,举个例子,我们平时在浏览器上搜索内容,就要用到数据库去检索我们的关键字。以前我们可能会用数组、集合、文件等来存储数据,但是接下来我们就会面临一个问题,当存储的数据或内容过多的时候,我们如何去精准的找到我们需要的东西,这时候数据库管理系统就派上了用场。除此之外,数据库管理系统还能永久的储存我们的数据。
为了便于大家理解,这里先给大家讲解几个概念
DB数据库(database):存储数据的“仓库”。它保存了一系列有组织的数据。
DBMS数据库管理系统(Database Management System):数据库是通过DBMS创建和操作的容器。
相关推荐HOT
更多>>linux命令行启动服务?
Linux开机启动chkconfig命令详解1、第一行告诉chkconfig缺省启动的运行级以及启动 和停止的优先级。如果某服务缺省不在任何运行级启动,那么使...详情>>
2023-10-21 23:54:28linux命令psw6?
linux命令大全1、Linux命令大全以下是一些常用的 Linux 命令:ls:列出当前目录下的文件和目录。cd:改变当前目录。pwd:显示当前目录的路径。m...详情>>
2023-10-21 22:31:23linux显示命令位置?
Linux中显示一个文件最后几行的命令是什么?tail -n 20 filename\x0d\x0a说明:显示filename最后20行。\x0d\x0a\x0d\x0aLinux下tail命令的使详情>>
2023-10-21 20:28:50linux重启王卡命令?
linux重启命令Linux的五个重启命令为:shutdown、poweroff、init、reboot、halt。shutdown shutdown命令可以安全地将系统关机。有些用户会使用...详情>>
2023-10-21 19:27:14