Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用WITH访问Oracle的直通查询_Sql_Ms Access_Oracle11g_Odbc - Fatal编程技术网

Sql 使用WITH访问Oracle的直通查询

Sql 使用WITH访问Oracle的直通查询,sql,ms-access,oracle11g,odbc,Sql,Ms Access,Oracle11g,Odbc,我曾尝试在TOAD和sqldeveloper中运行此功能,但在Access中运行passthrough查询时出现错误: “使用returnsRecords属性传递查询” 据此,本守则 With T1 as (select * from baasa), T2 as (select * from lalala), T4 as (select * from babab) select distinct T1.C11 as something, T4.C5 as somewhere, T2.C2

我曾尝试在TOAD和sqldeveloper中运行此功能,但在Access中运行passthrough查询时出现错误: “使用returnsRecords属性传递查询”

据此,本守则

With T1 as (select * from baasa), 
T2 as (select * from lalala), 
T4 as  (select * from babab)
select distinct T1.C11 as something, T4.C5 as somewhere, T2.C2 as what
from T1,T2,T4
Where T1.C11=T4.C5 and T1.C10=T2.C2
或者用小提琴演奏:
有人能帮我吗

我很确定您的查询有语法错误:WHERE子句之前没有SELECT nor FROM子句…

我很确定您的查询有语法错误:WHERE子句之前没有SELECT nor FROM子句…

您的(修改后的)查询在SQL Server 2008 R2中运行良好,它还可以很好地作为对同一对象的访问传递查询。验证查询的
Returns Records
属性是否设置为
Yes
(如下所示),然后再次尝试运行直通查询。正如我在对您的问题的最初评论中所说的,如果它适用于SQL Server,那么我看不出为什么它不适用于Oracle

您的(修改后的)查询在SQL Server 2008 R2中运行良好,并且作为对该查询的访问传递查询也运行良好。验证查询的
Returns Records
属性是否设置为
Yes
(如下所示),然后再次尝试运行直通查询。正如我在对您的问题的最初评论中所说的,如果它适用于SQL Server,那么我看不出为什么它不适用于Oracle


我承认我已经很长时间没有与Oracle合作了,但我认为您没有向我们提供足够的查询来确定问题所在。我确信Access传递查询可以在SQL Server上使用公共表表达式,所以我不明白为什么不能在Oracle上使用它们。只是确认一下:您的查询确实返回了记录,并且直通查询的
返回记录
属性设置为
,对吗?当我使用sqldeveloper时,它返回了记录,但当我使用access时,我得到了这个错误:“带returnsRecords属性的直通查询”。我可以知道如何设置为是或否吗?谢谢你提出的问题毫无意义。SQL因“ORA-00928:缺少选择关键字”而失败。检查SQL FIDLE以进行验证。此外,“使用returnsRecords属性传递查询”不是有效的访问错误消息。如果你不告诉我们你到底在做什么,我们就帮不了你。@GordThompson我在那里加了一句,很抱歉给你带来了困惑。@a_horse__,没有名字叫TOAD lol.。我承认我已经很久没有与Oracle合作了,但我认为你没有给我们提供足够的查询来确定问题。我确信Access传递查询可以在SQL Server上使用公共表表达式,所以我不明白为什么不能在Oracle上使用它们。只是确认一下:您的查询确实返回了记录,并且直通查询的
返回记录
属性设置为
,对吗?当我使用sqldeveloper时,它返回了记录,但当我使用access时,我得到了这个错误:“带returnsRecords属性的直通查询”。我可以知道如何设置为是或否吗?谢谢你提出的问题毫无意义。SQL因“ORA-00928:缺少选择关键字”而失败。检查SQL FIDLE以进行验证。此外,“使用returnsRecords属性传递查询”不是有效的访问错误消息。如果你不告诉我们你到底在做什么,我们就帮不了你。@GordThompson我在那里添加了,很抱歉造成混淆。@a_horse_,没有名字叫它TOAD lol。很抱歉我在那里添加了。很抱歉我在那里添加了。@Xarxas你有没有单击功能区栏“查询类型”部分的“通过”按钮?(再看一看上面的屏幕截图。它是用黄色突出显示的按钮。)在ODBC连接Str中,我应该填写什么(很抱歉有很多愚蠢的问题)@Xarxas看一看微软的文章。奇怪的是,当我尝试将表导入本地数据库时,它工作正常。但是,当我试图通过ODBC连接到oracle时,它没有工作…:(它现在可以工作了:)我修改了它,删除了“with”,所以代码是:select*from(select*from table1),其中有些东西。谢谢@Xarxas您是否单击了功能区栏“查询类型”部分中的“传递”按钮?(再看一看上面的屏幕截图。它是用黄色突出显示的按钮。)在ODBC连接Str中,我应该填写什么(很抱歉有很多愚蠢的问题)@Xarxas看一看微软的文章。奇怪的是,当我尝试将表导入本地数据库时,它工作正常。但是,当我试图通过ODBC连接到oracle时,它没有工作…:(它现在可以工作了:)我修改了它,删除了“with”,所以代码是:select*from(select*from table1),其中有些东西。谢谢