首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >存储过程错误算术溢出将numeric转换为数据类型varchar时出错

存储过程错误算术溢出将numeric转换为数据类型varchar时出错
EN

Stack Overflow用户
提问于 2020-03-05 17:05:34
回答 1查看 283关注 0票数 1

我知道这个问题已经被问了很多次了。但是我在谷歌上搜索了很多,也浏览了这里的答案,但是我不能理解为什么我的存储过程反复给出这个错误,因为不久前,相同的代码工作得很好。

请任何人可以帮助我找出为什么这个错误来了。而且,即使当它工作时,我没有得到我想要的输出,因为我想按顺序生成订单号,但我得到的数字与计数的数量相同。

代码语言:javascript
运行
复制
USE [Sost_Dev]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE [sost].[GetExternalOrderNumbers]
    @Count int
AS
BEGIN
    SET NOCOUNT ON;
DECLARE @year VARCHAR(2)
DECLARE @ExternalOrderNumbers nvarchar(50)

SET @year = RIGHT(CAST(DATEPART(yy, GETUTCDATE()) AS VARCHAR(4)),2)

    -- Insert statements for procedure here
BEGIN TRAN
SAVE TRAN seq

            --Creating Temp Table for every isolated connection
            CREATE TABLE #NewOrders(ExtOrderNumber nvarchar(50));

            WHILE @Count > 0
                BEGIN
                   INSERT INTO [sost].ServiceOrderNumberSequence DEFAULT VALUES
                    SET @ExternalOrderNumbers = 'ESON' + @year + RIGHT(REPLICATE('0',10) + CAST(SCOPE_IDENTITY() AS  NVARCHAR(7)) ,7);
                    print 'External' + @ExternalOrderNumbers;
                    --Insert New Order Number to Temporary Tables
                   INSERT INTO #NewOrders  values(@ExternalOrderNumbers)
                   SET @Count -=1
                END

COMMIT

--Fetching Order Numbers from Temporary Table.

SELECT @ExternalOrderNumbers as ExternalOrderNumber from #NewOrders
END

有关我的SQLServer中的错误,请参见下图

请找出结果,所有的订单号都是一样的,但我想以连续的方式。

EN

回答 1

Stack Overflow用户

发布于 2020-03-05 17:14:20

只需更改此行即可

代码语言:javascript
运行
复制
SET @ExternalOrderNumbers = 'ESON' + @year + RIGHT(REPLICATE('0',10) + CAST(SCOPE_IDENTITY() AS  NVARCHAR(100)) ,7);

编辑:按您的要求编辑。

代码语言:javascript
运行
复制
SET @ExternalOrderNumbers = 'ESON' + @year + RIGHT(REPLICATE('0',10) + CAST(RIGHT(SCOPE_IDENTITY(),7) AS  NVARCHAR(7)) ,7);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60541589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档