首页 理论教育 PHP与SQLserver数据库字段设计原则

PHP与SQLserver数据库字段设计原则

时间:2023-11-02 理论教育 版权反馈
【摘要】:比如,假如想看看月销售总额,总额字段类型是smallint,那么,如果总额超过了$32,767就不能进行计算操作了。而ID类型的文本字段,比如客户ID或订单号等等都应该设置得比一般想象更大。那你应该把数据库表字段的长度设为12或者13个字符长。

PHP与SQLserver数据库字段设计原则

1.每个表中都应该添加的3个有用的字段

dRecordCreationDate,在VB下默认是Now(),而在SQL Server下默认为GETDATE(),sRecordCreator,在SQL Server下默认为NOT NULL DEFAULT USER,nRecordVersion,记录的版本标记;有助于准确说明记录中出现null数据或者丢失数据的原因。

2.对地址和电话采用多个字段

描述街道地址就短短一行记录是不够的。Address_Line1、Address_Line2和Address_Line3可以提供更大的灵活性。还有,电话号码和邮件地址最好拥有自己的数据表,其间具有自身的类型和标记类别。

3.使用角色实体定义属于某类别的列

在需要对属于特定类别或者具有特定角色的事物做定义时,可以用角色实体来创建特定的时间关联关系,从而可以实现自我文档化。

举例:用PERSON实体和PERSON_TYPE实体来描述人员。比方说,当John Smith,Engineer提升为John Smith,Director乃至最后爬到John Smith,CIO的高位,而所有你要做的不过是改变两个表PERSON和PERSON_TYPE之间关系的键值,同时增加一个日期/时间字段来知道变化是何时发生的。这样,你的PERSON_TYPE表就包含了所有PERSON的可能类型,比如Associate、Engineer、Director、CIO或者CEO等。还有个替代办法就是改变PERSON记录来反映新头衔的变化,不过这样一来在时间上无法跟踪个人所处位置的具体时间。(www.xing528.com)

4.选择数字类型和文本类型尽量充足

在SQL中使用smallint和tinyint类型要特别小心。比如,假如想看看月销售总额,总额字段类型是smallint,那么,如果总额超过了$32,767就不能进行计算操作了。

而ID类型的文本字段,比如客户ID或订单号等等都应该设置得比一般想象更大。假设客户ID为10位数长。那你应该把数据库表字段的长度设为12或者13个字符长。但这额外占据的空间却无须将来重构整个数据库就可以实现数据库规模的增长了。

5.增加删除标记字段

在表中包含一个“删除标记”字段,这样就可以把行标记为删除。在关系数据库里不要单独删除某一行;最好采用清除数据程序而且要仔细维护索引整体性。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈