替过程或函数 dbo.GetBOMNote 指定了过多的参数
为过程或函数 dbo.GetBOMNote 指定了过多的参数。
最近学着玩玩SQL Server 2012
自定义了一个函数,大意是将BPCS中的多行BOM Note合并到一行上
USE [MyBPCS]
GO
/****** Object: UserDefinedFunction [dbo].[GetBOMNote] Script Date: 2015/3/26 9:59:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: <Description, ,>
-- =============================================
CREATE FUNCTION [dbo].[GetBOMNote](@Item CHAR(35),@Seq DECIMAL(4,0))
RETURNS NVARCHAR(4000)
AS
BEGIN
DECLARE @Note NVARCHAR(4000)
SET @Note = ''
SELECT @Note = @Note+';'+RTRIM(PNDES) FROM MyBPCS.dbo.MPN
WHERE PNPROD=@Item AND PNOPN=@Seq
RETURN STUFF(@Note,1,1,'')
END
然后用SELECT语句看看效果,一个参数时可行,两个就出现后面的错误消息
SELECT PNPROD,PNOPN,dbo.GetBOMNote(PNPROD,PNOPN) AS SNames FROM MYBPCS.DBO.MPN GROUP BY PNPROD,PNOPN
消息 8144,级别 16,状态 2,第 2 行
为过程或函数 dbo.GetBOMNote 指定了过多的参数。
------解决思路----------------------
看 FROM MYBPCS.DBO.MPN 的格式当前数据库不在 MYBPCS 里吧。
当前数据库正好也有 GetBOMNote 函数是一个参数的?
------解决思路----------------------
查看函数GetBOMNote是否在MYBPCS库,没指定是为当前库,当前库应该是有同名函数,参数不一致
最近学着玩玩SQL Server 2012
自定义了一个函数,大意是将BPCS中的多行BOM Note合并到一行上
USE [MyBPCS]
GO
/****** Object: UserDefinedFunction [dbo].[GetBOMNote] Script Date: 2015/3/26 9:59:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: <Description, ,>
-- =============================================
CREATE FUNCTION [dbo].[GetBOMNote](@Item CHAR(35),@Seq DECIMAL(4,0))
RETURNS NVARCHAR(4000)
AS
BEGIN
DECLARE @Note NVARCHAR(4000)
SET @Note = ''
SELECT @Note = @Note+';'+RTRIM(PNDES) FROM MyBPCS.dbo.MPN
WHERE PNPROD=@Item AND PNOPN=@Seq
RETURN STUFF(@Note,1,1,'')
END
然后用SELECT语句看看效果,一个参数时可行,两个就出现后面的错误消息
SELECT PNPROD,PNOPN,dbo.GetBOMNote(PNPROD,PNOPN) AS SNames FROM MYBPCS.DBO.MPN GROUP BY PNPROD,PNOPN
消息 8144,级别 16,状态 2,第 2 行
为过程或函数 dbo.GetBOMNote 指定了过多的参数。
------解决思路----------------------
看 FROM MYBPCS.DBO.MPN 的格式当前数据库不在 MYBPCS 里吧。
当前数据库正好也有 GetBOMNote 函数是一个参数的?
------解决思路----------------------
SELECT PNPROD
,PNOPN
,MYBPCS.dbo.GetBOMNote(PNPROD, PNOPN) AS SNames
FROM MYBPCS.DBO.MPN
GROUP BY PNPROD
,PNOPN
查看函数GetBOMNote是否在MYBPCS库,没指定是为当前库,当前库应该是有同名函数,参数不一致