求数据库字段设计

yyt_yang 2009-12-15 09:34:57
现在要在ACCESS的表中存入一串字符串,想把长度限制在400个字节,但ACCESS的文本类型最大长度为255,如果选择备注类型(最大长度65535),但我使用不了这么大的长度,
请问1、如果使用备注类型,每次操作的数据量最大只有400个是否会影响效率,是否会占用更多的磁盘空间
2、如果使用备注,能否限制字符的长度
3、除了备注类型,还有其他方法吗
...全文
124 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyt_yang 2009-12-15
  • 打赏
  • 举报
回复
如果数据越来越多
yyt_yang 2009-12-15
  • 打赏
  • 举报
回复
wwwwb,谢谢你的回答
那是不是如果选择字段备注类型,每插入一天,数据库都会按最大的长度去分配空间,即该字段每次都占有65535个字节,
还有如果数据原来越多,是否会影响操作的效率,会很大吗,谢谢
wwwwb 2009-12-15
  • 打赏
  • 举报
回复
3、超过255,只能用备注;
2、用代码,LEN(F1)<=400;
1、有影响,影响多大,取决于记录的多少,会占用磁盘空间。
yyt_yang 2009-12-15
  • 打赏
  • 举报
回复
谢谢 ACMAIN_CHM的详细回答,明白了,谢谢,结贴
ACMAIN_CHM 2009-12-15
  • 打赏
  • 举报
回复
另外,我的每张表都有唯一主键,当数据量比较多时会影响操作数据库的操作效率吗,比如获取一条记录时

1。表的设计原则是必须有主键。
2。主键会生成默认的唯一索引,这样会显著提高基于这个主键字段数据SELECT的速度, 但另一方面会增大数据插入,更新的开销因为需要额外的维护主键。


ACMAIN_CHM 2009-12-15
  • 打赏
  • 举报
回复
ACCESS默认一个块就是 4K

当你哪怕申请一个字节,它也会一次性向磁盘申请4096个字节,正确一个簇,或者8个扇。这样也是为了提供效率。
当你申请4090个字节,它还是一个块。当你申请 4097时,就会申请两个块。



yyt_yang 2009-12-15
  • 打赏
  • 举报
回复

谢谢ACMAIN_CHM的回答,
从文本类型改为备注类型后,测试了下插入一条备注类型记录比一条文本类型记录大4K,至于再多没有测试,占用磁盘空间大就大些吧,另外,我的每张表都有唯一主键,当数据量比较多时会影响操作数据库的操作效率吗,比如获取一条记录时
ACMAIN_CHM 2009-12-15
  • 打赏
  • 举报
回复
1、如果使用备注类型,每次操作的数据量最大只有400个是否会影响效率,是否会占用更多的磁盘空间
不会 占用更多的磁盘空间, 当然会多一点,但有限。

2、如果使用备注,能否限制字符的长度
不能。

3、除了备注类型,还有其他方法吗
无。(或者换数据库)
ACMAIN_CHM 2009-12-15
  • 打赏
  • 举报
回复
[Quote]那是不是如果选择字段备注类型,每插入一天,数据库都会按最大的长度去分配空间,即该字段每次都占有65535个字节,[/Quote]

"每插入一天,数据库都会按最大的长度去分配空间" 没有这种说法。备注型数据只会一次分一个"块" 给它,不会一次分 65536 个字节。

7,713

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧