gpt4 book ai didi

sql - 我可以为 varbinary 的最大大小设置 2 MB 吗?

转载 作者:行者123 更新时间:2023-12-01 09:20:10 27 4
gpt4 key购买 nike

据我所知,您可以“手动”定义的最大值是 8000 -> varbinary(8000) 据我所知,这意味着 8000 字节 -> 7,8125 KByte

是否可以将最大值设置为 2 MB?类似于 varbinary(2097152),还是我应该将其设置为 varbinary(max) 并通过我的上传/sql 插入脚本检查文件大小?

最佳答案

您可以使用 CHECK CONSTRAINT 来确保大小低于 2MB:

CREATE TABLE dbo.T
(
ID INT IDENTITY,
VarB VARBINARY(MAX)
);

ALTER TABLE dbo.T ADD CONSTRAINT CHK_T_VarB__2MB CHECK (DATALENGTH(VarB) <= 2097152);

然后当尝试插入大于 2 MB 的内容时:

DECLARE @B VARCHAR(MAX) = '|';
INSERT dbo.T (VarB)
SELECT CONVERT(VARBINARY(MAX), REPLICATE(@B, 2097153));

你得到一个错误:

The INSERT statement conflicted with the CHECK constraint "CHK_T_Column__2MB". The conflict occurred in database "TestDB", table "dbo.T", column 'VarB'.

关于sql - 我可以为 varbinary 的最大大小设置 2 MB 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34741079/

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