sqlserver主键的作用(sql数据库主键是什么)

本文主要介绍sqlserver主键的作用(sql数据库的主键是什么),下面一起看看sqlserver主键的作用(sql数据库的主键是什么)相关资讯。
设计主键时,通常要考虑以下几点:1。意义:无意义的定义来自使用者。;的观点,而这种废话也减少了数据库中的冗余信息。在一定程度上,人们通常称之为内部认同的关键。为什么这么说?原因之一是内部的。在某种程度上,表中的内部记录,从数据库的范围来看,如果你在设计时选择成为主键,用户信息的重要性,那么你迟早会面对用户 s要求更新这一信息,你将打破它的静态。2.static:除了唯一标识记录和外键之间的相关性之外,在主键中不应该考虑其他含义。理想状态是不再生成后的变化,所以我们不应该更新生成的主键值。如果更新了,至少说明信息对用户是有意义的,那你就违背了意想不到的意义。(数据集成等操作,我们需要处理主密钥,这是唯一能保证数据库完整性的东西。没有任何意义可以决定它的静态性质。3.简明:它包含许多主键和一些字段。它还包含一个存储类型为short的主键字段。一般用于成型。对于前者,主要考虑与外键相关的因素,而后者主要考虑性能。简短的主键表有助于方便关联和检索性能。看下面主生产计划(mssql)基于缺陷的键设计:复制代码如下:主表创建表pp_mpsheader( billno varchar(20)非空主键,plandate非空)-表pp_mpsbody( billno varchar(20)非空,行号smallint非空,productid int非空,productqty decimal (for)非空,主键(billno,行号)-设置外键修改表pp_mpsbody添加外表格中根据该计划生产的产品数量由账单号记录。当用户是主生产计划时,很可能是因为在billno中忽略了该计划,然后在他的修订号中,需要遵循主控制码表,否则文档会被外键约束,无法保存。如果没有外键约束,数据将失去完整性。如果注意以上三点,解决方法如下(mssql):复制代码如下:主表创建一个表pp_mpsheader( billid primary关键字,billn,o varchar(20)不为空,plandate不为空)-创建表pp_mpsbody (billid primary关键字,行号smallint不为空,productid int不为空,productqty decimal (is)不为空,主键(billid,行号))-设置外键修改表pp_mpsbody添加外键约束fk_pp_mpsheader_mpsbody(billid)引用pp_mpsheader(billid)现在主从表由billid组成,生产计划生成时,用户生成billid是没有意义的。之后就不会出现主从信息协调的问题了。同时,从表中得到的信息小于上述缺陷的设计。由于原来的key billno长度由20字节改为现在的billino 4字节,减少了信息的冗余。其实例子很多。例如,一些设计材料清单使用零件图作为主键和外键,这意味着信息将显示所有零件图的采购、生产和销售。在表中,当零件图号信息改变时,所有这些信息都需要首先改变。如果基础缺陷没有解决,可能需要写一个零件图更改流程,批量处理这些问题。在这个过程中,您可能还需要考虑订单处理...在一些设计中,关键的身份证号作为人员表,但后来身份证号从15位到18位,这意味着每个人都需要更改人事人员身份证信息表。如果你是一名设计师,这是一份来自社会保险机构的申请,那么你需要更新它。数百万条记录;所有工作人员根据桌号记录的信息会被外亿统计,所以可能你没有 在你的另一个生活中,你不需要做其他的工作。因此,选择无意义的密钥值作为主密钥的一部分,以避免长时间的这种改变。
了解更多sqlserver主键的作用(sql数据库的主键是什么)相关内容请关注本站点。