向 substring 函数传递了无效的 length 参数

baidu_35931093 baidu_35931093 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
调试出来 :select * from get_htcq() 这个函数出了问题

消息 536,级别 16,状态 3,过程 get_htcq,第 49 行
向 substring 函数传递了无效的 length 参数。

然后我查询了一下get_htcq() 这个函数的定义:

USE [TzglDb]
GO
/****** Object: UserDefinedFunction [dbo].[get_htcq] Script Date: 08/28/2017 13:24:04 ******/
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER FUNCTION [dbo].[get_htcq]
(

)
RETURNS
@htcq TABLE
(
-- Add the column definitions for the TABLE variable here
htno varchar(20),
lp varchar(50),
lz varchar(50),
roomno varchar(50),
cqno varchar(100),
khno varchar(20),
zqstart datetime,
zqend datetime,
flg int,
lzh varchar(50),
ocode varchar(5)

)
AS
BEGIN
DECLARE @count int
declare @i int
declare @lp varchar(200)
declare @lz varchar(200)
declare @roomno varchar(200)
declare @cqno varchar(500)

declare @htno varchar(20)


declare @sql varchar(100)
set @i=1
select top 1 @htno=htno from ht_mst
select @count=COUNT(*) from HT_MST
while @i<=@count
begin

--select top 1 @lp=lp,@lz=lz,@roomno=roomno,@cqno=cqno,@htno=htno from HT_MST where htno NOT IN (select tops @i htno from HT_MST order by htno)order by htno
select @lp=lp,@lz=lz,@roomno=roomno,@cqno=cqno,@htno=htno from HT_MST where htno=@htno

insert into @htcq(lp,lz,roomno,cqno,htno,khno,zqstart,zqend,flg,lzh,ocode)select lp,lz,roomno,cqno,htno,khno,zqstart,zqend,flg,lp+roomno,ocode from (select * from get_cqinf(@lp,@lz,@roomno,@cqno)) as cc left join (select HT_MST.htno,HT_KH.khno,zqstart,zqend,HT_MST.flg,HT_MST.ocode from HT_MST,HT_KH where HT_MST.htno=HT_KH.htno) as qq on qq.htno=@htno
select @htno=htno from HT_MST where htno in (select top 1 htno from HT_MST where htno>@htno ) order by htno
set @i= @i+1
end
return
END



求助这个函数哪里有问题,还是说数据库里的数据有空值的缘故?

ocode的值是‘0001’或者‘’。 设置成varchar(5)应该没毛病吧。
...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
baidu_35931093
非技术版 11,847 成员 33,667 内容