mysql数据库字段的取值范围设置过大有没有什么影响

mysql数据库字段的取值范围设置过大有没有什么影响,第1张

这个在数据库的方面是不能限制的 你想想一个int的就是-2147483648 - 2147483647这么大 你在限制到100啊 所以在数据库定义类型是限制是不可取的 在程序或是用SQL的语句限制啊!

你的采纳是我前进的动力,

记得好评和采纳,答题不易,互相帮助,

手机提问的朋友在客户端右上角评价点(满意)即可.

如果你认可我的回答,请及时点击(采纳为满意回答)按钮!!

好处:

1、扩展性,你可以想像到,如果你的数据表有超过1000W笔记录的时候,去修改数据库结构会造成什么结果,而使用预留的字段将避免在一个非常大的数据表上增加预留字段造成的问题;

2、某些视图,会因为增加了字段,造成视图无法使用,需要重新编译

可能产生的问题

1、预留字段的管理问题,既然使用了预留字段,就有其存在的意义,因此需要严格的文档去管理这些字段,一旦预留字段被使用,需要登记,防止混乱的管理导致数据库字段丢失、混乱

2、预留字段是否会占用过多的磁盘,这个我不是很清楚,非DBA专业人士。个人觉得,对于一般性的基础数据表,5个预留字段足矣,对于业务数据表,可考虑10~12个

设计数据库时,很注重字段类型及长度,因为书上说,会有性能问题,因为char比varchar速度要快很多,所以能用固定长度的就不要用变长字段,比如身份z号就可以使用CHAR(18),而不应该使用VARCHAR(18)。 Nvarchar占的空间要比varchar大,所以确定是英文时,就不要使用Nvarchar。 主键如果能用tinyint就不要用int,能用int就不要用GUID,节省空间速度快。不太关注数据库字段类型及长度,因为经常发生数据库字段设置过小的问题,或要改变类型如果使用了多个存储过程对一个表增改,当类型或字段长度变化时,就不得不去更改那些存储过程,如果漏掉哪个,程序执行结果也许就是错的。如:字段长度变长时,没有更新存储过程字段长度,程序照常执行,不会报错,存储过程会自动从长的字符串里截取他所支持的长度插到数据库里


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存