向 substring 函数传递了无效的 length 参数
调试出来 :select * from get_htcq() 这个函数出了问题
消息 536,级别 16,状态 3,过程 get_htcq,第 49 行
向 substring 函数传递了无效的 length 参数。
然后我查询了一下get_htcq() 这个函数的定义:
求助这个函数哪里有问题,还是说数据库里的数据有空值的缘故?
ocode的值是‘0001’或者‘’。 设置成varchar(5)应该没毛病吧。
消息 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)应该没毛病吧。
...全文
相关推荐
巧用JavaScript创建智能表单效果
巧用JavaScript创建智能表单效果
页面跳转js获取传递的参数
页面跳转js获取传递的参数,多种类型供大侠们参考
sqlserver substring函数使用方法小结
在操作sqlserver时候用到了substring函数,特整理一些实例,需要的朋友可以参考下。
HTML页面跳转及参数传递问题
HTML页面跳转: window.open(url, "", "width=600,height=400"); 第二个参数:_self,在当前窗口打开窗口;_blank(默认值),在另外的新建窗口打开新窗口; [removed].href="https://www.jb51.net"; //在同当前窗口中打开窗口 window.history.back(-1); //返回上一页面 <a> HTML参数传递: 1. url传参: 第一个页面(a.html): var obj
js获取html参数及向swf传递参数应用介绍
HTML页面是在客户端执行的,这样要获取参数必须使用客户端脚本如JavaScript,在这点上与服务器端脚本获取参数方式有所不同接下来将详细介绍下感兴趣的你可不要错过了哈


非技术版
