gpt4 book ai didi

sql-server - 在存储的 proc 参数中处理超过 8000 个字符

转载 作者:行者123 更新时间:2023-12-01 06:19:01 25 4
gpt4 key购买 nike

我有一个发送邮件的 SQL 存储过程。它的签名是这样的:

CREATE PROCEDURE SendMail
@From varchar(40),
@To varchar(255),
@Subject varchar(255),
@Body varchar(max),
@CC varchar(255) = null,
@BCC varchar(255) = null
AS...

例如,当消息是 5000 个字符时,它就起作用了。当它是 12 000 时,我得到一个错误 [ODBC SQL Server Driver]String data, right truncation.
根据帮助文件 varchar(max) 可以处理 2^31-1 个字节/字符。
所以我尝试改变 @Body varchar(max)@Body varchar(30000)我得到一个错误
The size (30000) given to the type 'varchar' exceeds the maximum allowed for any data type (8000).

所以最大值是 8000 而不是 2^31-1 字节?
如何处理超过 8000 个字符?

最佳答案

您需要使用 nvarchar(max),而不是 varchar(4000) 或 varchar(max)。这最多可以存储 2 GB 的文本,这将解决您的问题...

如需更多信息,请参阅 http://technet.microsoft.com/en-us/library/ms186939.aspx

关于sql-server - 在存储的 proc 参数中处理超过 8000 个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21700668/

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