Oracle数据库版本 v9.2(32bit)
以下SQL语句在PLSQL Developer v9.0.2.4.0中执行是成功的。
但是在vb6中执行就会出以下错误错 误:ORA-00972: 标识过长
错误号:-2147217900
错误源:OraOLEDB
----------------sql----------------
select bd_psndoc5bd_deptdoc.deptcode As MyFld_1,bd_psndoc5bd_deptdoc.deptname As MyFld_2,Sum(Case When bd_accpsndoc42bd_defdoc.docname in ('汉族') then 1 else 0 end) As MyFld_3,Sum(Case When bd_accpsndoc42bd_defdoc.docname in ('回族') then 1 else 0 end) As MyFld_4 from bd_psndoc,bd_accpsndoc,om_job,om_jobdesc,bd_defdoc bd_accpsndoc42bd_defdoc,bd_deptdoc bd_psndoc5bd_deptdoc where bd_psndoc.dr=0 and bd_accpsndoc.dr=0 and bd_psndoc.pk_psndoc=bd_accpsndoc.pk_psndoc and bd_psndoc.pk_om_job=om_job.pk_om_job(+) and bd_psndoc.pk_om_job=om_jobdesc.pk_om_job(+) And bd_psndoc.pk_corp in('1002') And (1=1) And bd_accpsndoc.nationality=bd_accpsndoc42bd_defdoc.pk_defdoc(+) And bd_psndoc.pk_deptdoc=bd_psndoc5bd_deptdoc.pk_deptdoc(+) group by bd_psndoc5bd_deptdoc.deptcode,bd_psndoc5bd_deptdoc.deptname问题解决立即结贴!谢谢了
本来这些语句在Oracle 8.16上是支持的,但升级到 9i 后就有问题了
而且在PL/SQL中可以执行,为什么在vb中就有错误呢?
Oracle真是难用啊。
=========================================
执行SQL查询时出错。
错 误:ORA-00907: 缺少右括号
错误号:-2147217900
错误源:OraOLEDB
----------------sql----------------
select T00000000003025.deptcode As MyFld_1,T00000000003025.deptname As MyFld_2,Sum(Case When T00000000003103.docname in ('4岗') then 1 else 0 end) As MyFld_3,Sum(Case When T00000000003103.docname in ('5岗') then 1 else 0 end) As MyFld_4 from bd_psndoc,bd_accpsndoc,om_job,om_jobdesc,bd_defdoc T00000000003103,bd_deptdoc T00000000003025 where bd_psndoc.dr=0 and bd_accpsndoc.dr=0 and bd_psndoc.pk_psndoc=bd_accpsndoc.pk_psndoc and bd_psndoc.pk_om_job=om_job.pk_om_job(+) and bd_psndoc.pk_om_job=om_jobdesc.pk_om_job(+) And bd_psndoc.pk_corp in('1002') And (1=1) And bd_accpsndoc.groupdef15=T00000000003103.pk_defdoc(+) And bd_psndoc.pk_deptdoc=T00000000003025.pk_deptdoc(+) group by T00000000003025.deptcode,T00000000003025.deptname
在ORACLE8.17中没问题的!
楼主再仔细检查一下!
8i是没问题的。
我想问一下:
安装9i的数据库服务
用8i的客户端来访问9i的数据库服务,
如何安装(安装顺序)?