SQL Server 2005 中的 NVARCHAR 大小
在 SQL Server 2005(不是 7.0)中,是否有任何理由使用 NVARCHAR(255) 而不是 256 或其他数字?
是否存在最佳大小,是否有任何理由使用 2 的幂?
(我将存储 Unicode 数据,因此必须使用 NVARCHAR)
In SQL Server 2005 (not 7.0), is there any reason to use NVARCHAR(255) instead of 256 or some other number?
Is there any optimal size, and is there any reason to use powers of two?
(I will be storing Unicode data, so I have to use NVARCHAR)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
在 SQL Server 2005 中,没有。 使用 255 的唯一原因是您需要考虑与其他平台的可移植性。 其他一些数据库风格会在 255 个字符后完全更改类型名称。
In SQL Server 2005, no. The only reason to use 255 is if you need to consider portability with other platforms. Some other database flavors change the name of the type completely after 255 characters.
在 SQL Server(2000 及更早的 IIRC)中,列的最佳(甚至可能是最大)大小取决于所有列的大小,不包括 (n) 文本和图像内容。 我相信 8K 是表中记录的“自然”大小,因此列大小加在一起应该小于 8000 字节。
我相信,从 SQL Server 2005 更高版本开始,这不是什么大问题。
In SQL Server (2000 and earlier IIRC), the optimal (possibly even maximum) size of columns is dependent on the size of all columns together, excluding (n)text and image contents. I believe 8K is the 'natural' size of records in a table, so your column size added together should be something less than 8000 bytes.
From SQL Server 2005 an higher this isn't much of an issue, I believe.
最佳大小是存储数据所需的最大长度。
The optimal size is the greatest length you will need to store your data.
不,选择 2 的幂的最大字段长度没有任何优势。
这是软件开发的旧时代的遗留物,其中长度小于 256 个字符的字符串以一种方式存储,超过 255 个字符的字符串以另一种方式存储。
No, there is no advantage of choosing maximum field lengths that are powers of two.
It's a holdover from the old and crusty days of software development where strings less than 256 characters long were stored one way, and strings over 255 characters another way.
在 SQL 2005+ 中,有一个 NVarChar(max) 使用您可用的最大大小。 您最多可以在其中存储 2GB 的内容。 它和 NText 一样,
你存储什么并不重要,因为它们几乎都是一样的
In SQL 2005+ there is a NVarChar(max) that uses that maximum size available to you. You can store up to 2GB in that. Its the same as NText
It doesnt really matter what you store as they are all pretty much the same