if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[SEARCH_PPXX1]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[SEARCH_PPXX1]
GOSET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SEARCH_PPXX1]
(
@BL_ID int,
@LC_ID int,
@PP_ID int
)
ASdeclare @sqlstr varchar(1000)if(@LC_ID<>0 and @BL_ID=0 and @PP_ID=0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID='''+@LC_ID+''''
if(@LC_ID<>0 and @BL_ID<>0 and @PP_ID=0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID=1 and A.BL_ID=1'
if(@LC_ID<>0 and @BL_ID<>0 and @PP_ID<>0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID=1 and A.BL_ID=1 and A.PP_ID=1'exec (@sqlstr) GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
错误:
System.Data.SqlClient.SqlException: 将 varchar 值 'select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID and A.LC_ID='' 转换为数据类型为 int 的列时发生语法错误。
drop procedure [dbo].[SEARCH_PPXX1]
GOSET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SEARCH_PPXX1]
(
@BL_ID int,
@LC_ID int,
@PP_ID int
)
ASdeclare @sqlstr varchar(1000)if(@LC_ID<>0 and @BL_ID=0 and @PP_ID=0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID='''+@LC_ID+''''
if(@LC_ID<>0 and @BL_ID<>0 and @PP_ID=0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID=1 and A.BL_ID=1'
if(@LC_ID<>0 and @BL_ID<>0 and @PP_ID<>0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID=1 and A.BL_ID=1 and A.PP_ID=1'exec (@sqlstr) GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
错误:
System.Data.SqlClient.SqlException: 将 varchar 值 'select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID and A.LC_ID='' 转换为数据类型为 int 的列时发生语法错误。
解决方案 »
- 实体类是bool型如何在页面显示汉字?
- 我要把javascript数组的值改为从后台读取,怎么改写
- vs2008出毛病了?
- 怎么通过GridView传过来的id号显示全部信息,高手帮帮忙
- 求:我用mailto发送邮件,但是它不支持空格和一些特殊字符(如:&等)
- 如何改变日期的输出格式,在textbox中
- 怎么样把一堆快捷键水平放置;
- 初学者关于sql数据库连接的问题,请大家帮我解答
- 在线等待,快快帮忙:如何把一个页面的值返回并赋给上个页面的控件(如textbox的text)?
- 有问题要问。。。
- 用vs.net编写asp.net的朋友看一看,帮一帮一个新手,叫新手感受这里的朋友的热情
- 数据库多用户使用和连接未关闭的异常问题?
A.LC_ID='' //这里A.LC_ID是整形,怎么能和''比较? 将''改成一个数值试一下.
2.
如果不行的话:
你看一下: 表PPXX LCXX BLXX 这三个表的: ID字段都是不是整型的.
你在将参数传到存储过程里的时候,
是否都已经是可心正常转换成int类型的了。。
drop procedure [dbo].[SEARCH_PPXX1]
GOSET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SEARCH_PPXX1]
(
@BL_ID int,
@LC_ID int,
@PP_ID int
)
ASdeclare @sqlstr varchar(1000)if(@LC_ID<>0 and @BL_ID=0 and @PP_ID=0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and convert(varchar(20),A.LC_ID)='''+convert(varchar(20),@LC_ID)+''''
if(@LC_ID<>0 and @BL_ID<>0 and @PP_ID=0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID=1 and A.BL_ID=1'
if(@LC_ID<>0 and @BL_ID<>0 and @PP_ID<>0)
set @sqlstr='select A.PP_NAM,A.PP_LOGO,B.LC_NAM,C.BL_NAM from PPXX A,LCXX B,BLXX C
where A.LC_ID=B.LC_ID and A.BL_ID=C.BL_ID and C.LC_ID=B.LC_ID
and A.LC_ID=1 and A.BL_ID=1 and A.PP_ID=1'exec (@sqlstr) GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO