数据库中主键、主码、主属性、关键字、候选关键字、码的区别

数据库中主键、主码、主属性、关键字、候选关键字、码的区别,第1张

1、关系:

主码=主键=主关键字

关键字=候选码

候选关键字=候选码中除去主码的其他候选码

2、理解:

主码(主键、主关键字):若一个关系有多个候选码,选择其中一个为主码。

候选码(关键字):某一属性组的值能唯一标识一个元组而其子集不能(去掉任意一个属性都不能标识该元组),则称该属性组为候选码(补充元组:表中的一行即为一个元组)。

主属性:候选码包含的属性(一个或多个属性)。

码:唯一标识实体的属性或属性组合称为码。

扩展资料:

常见的数据库字段类型如下:

1、Char固定长度字符串最大长度2000bytes。

2、VARCHAR2可变长度字符串最大长度4000bytes,索引最大长度749。

3、NCHAR基于字符集NCHAR固定长度字符串的最大长度2000bytes。

4、Nvarchar2基于字符集的可变长度字符串最大长度4000bytes。

5、DATE日期(日-月-年)DD-MM-YY(HH-MI-SS)经过严格测试,无千虫问题。

6、LONG超长字符串的最大长度为2G(231-1),足以存储大多数标题。

7、RAW原始定长二进制数据最大长度2000字节可存储多媒体图像声音等。

8、LONG RAW 长原始可变长度二进制数据最大长度2G,同上。

9、BLOB二进制数据最大长度4G CLOB字符数据最大长度4G。

10、NCLOB基于字符集4G的nclb最大字符数据长度。

11、BFILE数据库外存储的BFILE二进制数据的最大长度为4G。

首先明白什么是主键:唯一标示表中的某行数据。

1.无意义性:此处无意义是从用户的角度来定义的。这种无意义在一定程度上也会减少数据库的信息冗余。常常有人称呼主键为内部标识,为什么会这样称呼,原因之一在于“内部”,所谓内部从某种程度上来说就是指表记录,从大的范围来说就是数据库,如果你在设计的时候选择了对用户来说有意义的信息来作为主键,那么迟早会面对用户提出对这块信息进行更新的需求,那么你就违背了它应有的静态。

2.静态性:主键除了唯一地标识一条记录及外键的关联外,应不再考虑其他的意义,最理想的状态就是在产生后不再变动,所以在主键值产生后应考虑不对他进行更新等 *** 作。如果进行了更新 *** 作那么至少说明这块信息对于用户来说是有一定的意义,那么你就违背了应有的无意义性。(对数据进行整合等 *** 作时可能需要对主键进行处理,这样做是为了保证数据库的完整性——记录的唯一,不在此考虑范围之内。)

无意义性往往可以决定其静态性。

3.简短性:既包含主键组成字段数量要少,还包含主键中单个字段存储类型简短,一般采用整形;对于前者主要考虑的是外键关联的因素;对于后者主要考虑的是性能。主键的简短对表的关联便捷性及检索的性能有极大的帮助。

详细出处参考:http://www.jb51.net/article/30907.htm

CREATE TABLE `ecm_address` (

`addr_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`user_id` int(10) unsigned NOT NULL DEFAULT '0',

`consignee` varchar(60) NOT NULL DEFAULT '',

`region_id` int(10) unsigned DEFAULT NULL,

`region_name` varchar(255) DEFAULT NULL,

`address` varchar(255) DEFAULT NULL,

`zipcode` varchar(20) DEFAULT NULL,

`phone_tel` varchar(60) DEFAULT NULL,

`phone_mob` varchar(60) DEFAULT NULL,

PRIMARY KEY (`addr_id`),

KEY `user_id` (`user_id`)

) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

你注意这段创建表的mysql语句,在最后一行有个:AUTO_INCREMENT=2,这个表示建好表之后,自动增长是从2开始的,如果=10,那么是从10开始的。明白了吧,有用的话请给分,谢谢!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9993257.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存