gpt4 book ai didi

sql-server - NVARCHAR 或 VARCHAR 变量定义的返回长度

转载 作者:行者123 更新时间:2023-12-04 02:00:41 27 4
gpt4 key购买 nike

我在存储过程中声明了一个变量:

DECLARE @CurrentChunk NVARCHAR(250)

我想使用变量的长度,即 250,稍后在我的 sp 中用于计算目的,我想将我的代码保留为 dry尽可能。

这是我的代码(假设 @Narrative 是 SP 的参数):

DECLARE @ChunkSizeCharacters INT, 
@NumChunks INT,
@LoopIndex INT,
@CurrentChunk NVARCHAR(250)

SET @ChunkSizeCharacters = 250 -- HERE'S WHERE I WANT THE LENGTH OF @CurrentChunk
SET @NumChunks = CEILING((LEN(@Narrative) * 1.0)/@ChunkSizeCharacters)
SET @LoopIndex = 0;

WHILE (@LoopIndex < @NumChunks)
BEGIN
SET @CurrentChunk = SUBSTRING(@Narrative,
((@LoopIndex * @ChunkSizeCharacters) + 1), @ChunkSizeCharacters)

INSERT INTO [dbo].[Chunks] ([Chunk]) VALUES (@CurrentChunk)
SET @LoopIndex = @LoopIndex + 1
END

有没有办法确定 NVARCHARVARCHAR 变量定义的长度(请仔细阅读——我不是在看LEN())?

最佳答案

似乎 MaxLength 变体属性返回了您要查找的值。

 DECLARE @Banana varchar(255) = 'This banana'

SELECT SQL_VARIANT_PROPERTY(@Banana, 'MaxLength')

返回 255。

关于sql-server - NVARCHAR 或 VARCHAR 变量定义的返回长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28700607/

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