C# Sql命令在visual studio-oracle中无法正常工作

C# Sql命令在visual studio-oracle中无法正常工作,c#,.net,sql-server,vb.net,oracle,C#,.net,Sql Server,Vb.net,Oracle,我要执行此命令: SELECT WORKORDERID, (SELECT WORKTYPEID FROM WORK_TYPE v WHERE v.WORKTYPEID = e.WORKTYPE) w FROM WORKORDERS e 它在SQL Server和Visual Studio中工作,但当我想在oracle上执行此命令时,我在oracle和SQL Server中通过Visual Studio Server资源管理器拥有

我要执行此命令:

SELECT        
    WORKORDERID, 
    (SELECT WORKTYPEID FROM WORK_TYPE v WHERE v.WORKTYPEID = e.WORKTYPE) w
FROM            
    WORKORDERS e
它在SQL Server和Visual Studio中工作,但当我想在oracle上执行此命令时,我在oracle和SQL Server中通过Visual Studio Server资源管理器拥有相同的表,我遇到以下错误:

SELECT子句中出错:“SELECT”附近的表达式。 SELECT子句中出错:“FROM”附近的表达式。 第条中缺少。无法分析查询文本


然后正确显示数据,但在dataset中不起作用

您不能在要选择的列中指定另一个select查询。尝试改用Join

select e.WORKORDERID, v.WORKTYPEID 
from WORKORDERS e
join WORK_TYPE v on v.WORKTYPEID =e.WORKTYPE

这应该是可行的。

我知道TSQL,但我对Oracle的了解足够多,知道sysntax不完全相同,因此可能您的查询在pSql中无效。当然,如果子查询返回一行,您可以这样做@本·罗宾逊与甲骨文完全相同。作者的查询肯定还有其他问题。检查这个SQLFIDLE:是的,这是完全有效的。不过Oracle不喜欢额外的回车。