|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。guid|数据利用GUID作为数据表主键的优点
数据表主健一般接纳以下三种体例:
1.主动递增值。
2.独一称号。这个是利用本人界说的算法来天生一个独一序列号。
3.GUID(全局独一标识符)。
GUID与主动递增值及独一称号对照GUID
在客户端天生,由GUID的特征决意,经由过程GUID天生的值大概呈现反复的时机几近即是零,因而包管在拔出表的时分主键值独一。
能够便利处置散布式数据的提交,好比:分店数据向总店提交DD间接将该部分数据拔出便可。
撑持离线数据处置。对当地数据包举行新增纪录时便可将该数据表的关头字段值赋值,其处置办法是与在线新增时是分歧的。
主动递增值
在数据库服务器端天生,因为该值是由数据库体系外部处置的,亦包管其独一性,但因为其是在数据库服务器端天生,因而必需将该值前往客户端,客户端经由过程该值过行别的操纵。好比一张票据(主从表)是利用主动递增值,当拔出票据仰面后,必需将票据仰面的关头字段值前往,再拔出票据明细(票据明细是经由过程票据仰面关头字段举行联系关系的)。
不克不及很优点理散布式数据的提交,好比:分店数据向总店提交DD提交数据时必需从头天生该数据表的关头字段值,以包管该字段值独一。
要撑持离线数据处置必要举行分外的处置,对当地数据包举行保留纪录(保留到当地)时必要拔出一个假定独一值,在提交离线数据回数据服务器时再从头天生真实的独一值,偏重新举行相干的处置。
独一称号
在客户端天生或在服务端天生,相对主动递增值分歧的中央就是本人保护天生独一值的算法及所保留的一时值,简单形成堕落或别的成绩。假如是在客户端天生独一值的话,还必需包管所天生的值是独一的。
不克不及很优点理散布式数据的提交,好比:分店数据向总店提交DD提交数据时必需从头天生(或事后处置)该数据表的关头字段值,以包管该字段值独一
要撑持离线数据处置必要举行分外的处置,对当地数据包举行保留纪录(保留到当地)时必要拔出一个假定独一值,在提交离线数据回数据服务器时再从头天生真实的独一值,偏重新举行相干的处置。
实例申明
上面以一个新增票据保留对照GUID与主动递增值/独一称号的不同
举措
GUID
主动递增值/独一称号
票据仰面
新增
票据仰面关头字段值:猎取并填写
票据仰面关头字段值:无
保留
间接保留
起首猎取并填写关头字段值,然后再举行保留
前往
间接前往
前往时必需将关头字段值前往
票据明细
新增
联系关系票据仰面字段值:间接填写
票据明细关头字段值:猎取并填写
联系关系票据仰面字段值:无
票据明细关头字段值:无
保留
间接保留
猎取票据仰面关头字段值并填写到票据明细的联系关系票据仰面字段中;
然后猎取并填写票据明细关头字段值;
再举行保留
综合以上所述,用GUID作为数据表的关头字段值是能够加重关头字段相干的操纵的,而且是最间接有用的办法。
对于update操作,只需要把event中的旧行和新行值对调即可。 |
|