【发布时间】:2011-01-28 18:02:29
【问题描述】:
我有一个 DB2 SQL 查询,我需要通过 Database Expert 中的添加命令将它作为 Crystal Reports 文件的一部分。我的查询如下:
select "V_SIA_HIST_UTIL"."ID_HISTQ_UTILT_GIA"
, "V_SIA_HIST_UTIL"."PRENM_UTILT_GIA"
, "V_SIA_HIST_UTIL"."NM_UTILT_GIA"
, "V_SIA_HIST_UTIL"."CD_UTILT_GIA"
, "V_SIA_HIST_UTIL"."DH_DERNI_MODIF_UTILT_GIA"
, "V_SIA_HIST_UTIL"."ID_HIST_UTILT_GIA_PAREN"
, "pag"."nom_type"
, "pag"."nom"
, "pag"."description"
, "pag"."nom_affiche"
, "pag"."tri"
, "pag"."id_utilisateur"
from "TEST"."V_SIA_HIST_UTIL"
full outer join (
select "p"."nom_type"
, "p"."nom"
, "p"."description"
, "p"."nom_affiche"
, "p"."tri"
, "p"."id_utilisateur"
from (
select 'p' as "nom_type"
, "V_SIA_HST_ROL_SECU"."NM_ROLE_SECUR_GIA" as "nom"
, CAST(NULL AS VARCHAR(128)) as "description"
, CAST(NULL AS VARCHAR(128)) as "nom_affiche"
, 0 as "tri"
, "V_SIA_JC_ROLS_UTIL"."ID_HISTQ_UTILT_GIA" as "id_utilisateur"
from "TEST"."V_SIA_HST_ROL_SECU"
inner join "TEST"."V_SIA_JC_ROLS_UTIL" on "V_SIA_JC_ROLS_UTIL"."ID_HISTQ_ROLE_SECUR_GIA" = "V_SIA_HST_ROL_SECU"."ID_HISTQ_ROLE_SECUR_GIA"
union
select 'a' as "nom_type"
, "V_SIA_HST_ASG_RESS"."NM_ASSGN_RESRC_GIA" as "nom"
, "V_SIA_HST_ASG_RESS"."DESCN_ASSGN_RESRC_GIA" as "description"
, "V_SIA_HST_ASG_RESS"."NM_AFFIC_ASSGN_GIA" as "nom_affiche"
, 1 as "tri"
, "V_SIA_JC_ASSG_UTIL"."ID_HISTQ_UTILT_GIA" as "id_utilisateur"
from "TEST"."V_SIA_HST_ASG_RESS"
inner join "TEST"."V_SIA_JC_ASSG_UTIL" on "V_SIA_JC_ASSG_UTIL"."ID_HIST_ASSGN_RESRC_GIA" = "V_SIA_HST_ASG_RESS"."ID_HIST_ASSGN_RESRC_GIA"
union
select 'g' as "nom_type"
, "V_SIA_HST_GRP_SECU"."NM_GROUP_SECUR_GIA" as "nom"
, CAST(NULL AS VARCHAR(128)) as "description"
, CAST(NULL AS VARCHAR(128)) as "nom_affiche"
, 2 as "tri"
, "V_SIA_JC_GRPS_UTIL"."ID_HISTQ_UTILT_GIA" as "id_utilisateur"
from "TEST"."V_SIA_HST_GRP_SECU"
inner join "TEST"."V_SIA_JC_GRPS_UTIL" on "V_SIA_JC_GRPS_UTIL"."ID_HISTQ_GROUP_SECUR_GIA" = "V_SIA_HST_GRP_SECU"."ID_HISTQ_GROUP_SECUR_GIA"
) "p"
) "pag" on "pag"."id_utilisateur" = "V_SIA_HIST_UTIL"."ID_HISTQ_UTILT_GIA"
当数据库专家尝试针对底层 DB2 数据中心验证查询时,我从 Crystal Reports 收到错误消息:
无法从数据库中检索数据。
详细信息:42S22:[IBM][CLI 驱动程序][DB2] SQL0206N
“V_SIA_HST_ROL_SECU.NM_ROLE_SECUR_GIA”在
中无效 使用它的上下文。 SQLSTATE=42703
[数据库供应商代码:-206]
我忘了提及这些建议的原因中的任何一个似乎都不适用于我的查询。
DB2 SQL-Error: -206 SQLState: 42703
同样的查询在 SQL Server 2005 上运行良好。
关于如何解决这个问题的任何线索?这是我第一次使用 DB2,我什至今天早上刚刚安装了 DB2 Data Center Client (DB2 Connect)!
提前感谢大家! =)
【问题讨论】: