C# 在执行SELECT语句后,如何显示不同于数据库的字段和记录?

C# 在执行SELECT语句后,如何显示不同于数据库的字段和记录?,c#,.net,sql-server,winforms,crystal-reports,C#,.net,Sql Server,Winforms,Crystal Reports,我在WindowsForm应用程序中创建了Crystal Reports报表查看器。加载包含报表查看器的表单时,将使用从TableAdapter查询配置向导创建的填充方法将数据加载到报表中。我的数据库中有一列的类型是一个位。因此,当报告加载时,它会显示True或False,这取决于数据库中保存的内容。我想知道当字段设置为True时如何在报告中显示字符串“check”,当字段设置为false时如何显示字符串“replica”。谢谢。您可以更改TableAdapter用于格式化结果的SQL,也可以使

我在WindowsForm应用程序中创建了Crystal Reports报表查看器。加载包含报表查看器的表单时,将使用从TableAdapter查询配置向导创建的填充方法将数据加载到报表中。我的数据库中有一列的类型是一个位。因此,当报告加载时,它会显示True或False,这取决于数据库中保存的内容。我想知道当字段设置为True时如何在报告中显示字符串“check”,当字段设置为false时如何显示字符串“replica”。谢谢。

您可以更改TableAdapter用于格式化结果的SQL,也可以使用Crystal Reports进行格式化

如果您想在实际的SQL语句中执行此操作,那么下面的代码可以使用

SELECT (CASE [ColumnName] WHEN 1 THEN 'Cheque' ELSE 'Duplicata' END) as [AliasName]
FROM [TableName]

您可以更改TableAdapter用于格式化结果的SQL,也可以使用Crystal Reports进行格式化

如果您想在实际的SQL语句中执行此操作,那么下面的代码可以使用

SELECT (CASE [ColumnName] WHEN 1 THEN 'Cheque' ELSE 'Duplicata' END) as [AliasName]
FROM [TableName]

我遇到以下错误:无法启用约束。一行或多行包含违反非空、唯一或外键约束的值。选择Titulo.codigo、Titulo.valor、Titulo.tipo、Titulo.vencimento、Sacado.nome作为Sacado_nome、Cliente.nome作为Cliente_nome,Titulo.Cliente_id=Cliente.id internal JOIN Sacado ON Titulo.Sacado_id=Sacado.id,其中Titulo.tipo='True'和Titulo.data_base之间的数据1和数据2'Titulo','Cliente'和'Sacado'是表“Titulo.tipo”是我刚才提到的字段+++data1和data2是参数。@Bruno您的参数需要有@in(@data1,@data2)。另外,Titulo.tipo是位列还是char/varchar?最后一点,在这个查询中,只返回Titulo.tipo='True'的行,因此在select语句中可以省略Titulo.tipo列,只需选择
Titulo.codigo,Titulo.valor,'check'作为tipo,Titulo.vencimento…
选择Titulo.codigo,Titulo.valor,'check'作为tipo,Titulo.vencimento。。。工作得很好。非常感谢。我遇到以下错误:无法启用约束。一行或多行包含违反非空、唯一或外键约束的值。选择Titulo.codigo、Titulo.valor、Titulo.tipo、Titulo.vencimento、Sacado.nome作为Sacado_nome、Cliente.nome作为Cliente_nome,Titulo.Cliente_id=Cliente.id internal JOIN Sacado ON Titulo.Sacado_id=Sacado.id,其中Titulo.tipo='True'和Titulo.data_base之间的数据1和数据2'Titulo','Cliente'和'Sacado'是表“Titulo.tipo”是我刚才提到的字段+++data1和data2是参数。@Bruno您的参数需要有@in(@data1,@data2)。另外,Titulo.tipo是位列还是char/varchar?最后一点,在这个查询中,只返回Titulo.tipo='True'的行,因此在select语句中可以省略Titulo.tipo列,只需选择
Titulo.codigo,Titulo.valor,'check'作为tipo,Titulo.vencimento…
选择Titulo.codigo,Titulo.valor,'check'作为tipo,Titulo.vencimento。。。工作得很好。非常感谢你。