将 nvarchar 值转换为数据类型位报表生成器时转换失败

问题描述 投票:0回答:1

我有一个在报表生成器中使用的查询。 Maindataset

中的查询
select 
customer_id
,first_name
,last_name
,case when customer_gender=0 then 'Man' 
when customer_gender=1 then 'women'
else null as gender 
,phone
,email
,city
from [customers] 

因为我想添加性别作为参数(显示为男人和女人), 我已经创建了性别数据集

select
case when customer_gender=0 then 'Man' 
when customer_gender=1 then 'women'
else null as G
from [customers]

当我点击运行时,出现错误消息

将 nvarchar 值“Man”转换为数据类型 bit 时转换失败。

谢谢

ssrs-2012 reportingservices-2005 reportbuilder
1个回答
0
投票

报表生成器尝试将该 case 语句的结果放入位字段中,或者它有一个表达式需要使用该字段的位字段。不要替换原始字段,而是使用 case 语句的结果添加一个新字段,并更改显示它的表达式以使用此字段而不是旧字段。

select customer_id
    ,first_name
    ,last_name
    ,customer_gender as gender 
    ,case when customer_gender=0 then 'Man' 
    when customer_gender=1 then 'women'
    else null as genderText 
    ,phone
    ,email
    ,city
    from [customers]
© www.soinside.com 2019 - 2024. All rights reserved.