gpt4 book ai didi

c# - 附加到 VARCHAR 的大小度量是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 11:40:17 25 4
gpt4 key购买 nike

我在整个应用程序中使用 VARCHAR,发现一些特别令人困惑的事情......为什么我需要定义具有长度的 SQL VARCHAR 列,例如 VARCHAR(50) 或 VARCHAR(1000)?这个长度约束允许我定义我喜欢的最大字符串长度的唯一目的是什么? VARCHAR(50) 和 VARCHAR(1000) 之间是否存在任何性能差异或其他差异?

最佳答案

这完全取决于您的 DBMS 的内部结构。例如,如果您索引一个 varchar 列,您几乎肯定会得到一个设置为最大大小的关键部分。

那是因为索引必须非常高效,在这种情况下您不希望处理可变长度字段,因为它可能会减慢您的速度。

即使在数据库的数据区域,您可能会发现它只允许最大尺寸。我见过一些建议,只是在行中存储一个指向磁盘堆的指针,但这意味着每行两次磁盘读取,我认为这不是实现大规模性能的一个很好的选择。

列的大小会影响性能,例如一次可以读入多少条记录,一个 n 叉树 inode 可以容纳多少条记录等等。

关于c# - 附加到 VARCHAR 的大小度量是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4999638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com