如果我在选择字段类型的时候,我都用大一些的。
比如,varchar(20)可能就够用了,但是我为了以后有可能扩充,我存成varchar(50)
再如,有些数值,用smallint就够了,我为了以后扩充,都存成bigint我想问一下,这样做,除了存储时,更占用更多的硬盘空间以外,会不会在数据量增多的时候,对查询的速度有影响?
如果有影响的话,会很明显地感觉到吗?
比如,varchar(20)可能就够用了,但是我为了以后有可能扩充,我存成varchar(50)
再如,有些数值,用smallint就够了,我为了以后扩充,都存成bigint我想问一下,这样做,除了存储时,更占用更多的硬盘空间以外,会不会在数据量增多的时候,对查询的速度有影响?
如果有影响的话,会很明显地感觉到吗?
解决方案 »
- sql server编辑表的时候反应很慢,求解决方案!
- 多表count查询,帮帮忙看看
- 通过存储过程来实现数据库备份,遇到的问题,提示“不能在事务内部执行备份或还原操作。”
- 关于数据库缓冲区的问题
- sp_executesql的问题
- 特难的统计语句,50分,在线等,马上就给!!!!!!
- 我要查询表中年龄最大的10条记录,SQL应该怎么写?(在线等待)
- 数据表(Sql Server)有一个text字段,如何更改(update)此字段内容?
- 请问存储过程和触发器的区别
- 关于多表关联的问题!!!
- SQL新手问CHECK约束的问题
- 老师, sql server 2005 中建立数据库时,为什么可以有,数据库名,数据库逻辑名
而对于 int 和 bigint 类型,无论其存储数值的大小,其实际都占用固定大小的存储空间(int 4 字节,bigint 8 字节)。表所占用的存储空间变大,不但会导致执行“table scan”时进行过多的 i/o,而且还会增加表上索引的层级数,导致“index seek”需要更多的 i/o。这样,当然会降低查询性能(表越大越明显)。