问题标签 [external-tables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1217 浏览

oracle - 如何使用 Oracle Preprocessor for External Tables 来使用这种类型的格式?

假设我有一个自定义文件格式,可以类似于 N 个表。让我们选择 3。我可以转换文件,编写自定义加载包装器来填充 3 个数据库表。

但是假设空间和资源限制,我不能将所有这些都存储在表空间中。

我可以使用 Oracle Preprocessor for External Tables 以三种不同的方式转换自定义文件吗?

我读过的使用示例为 gzip 文本文件提供了一个示例。但这是一对一的文件到表的关系,只有一次转换。

我有一个文件,其中包含 N 种可能的数据提取。

  • 我是否需要定义 N 个外部表,每个表都引用不同的程序?
  • 如果我将三个表映射到同一个文件,这将如何影响性能?(访问主要是或全部读取,很少或没有写入)。

另外,我的预处理器的标准输出必须是什么格式?必须是 CSV,还是有办法配置外部表驱动程序?

0 投票
4 回答
4278 浏览

sql - Oracle 外部表。优化选择查询

我必须从 Oracle 外部表中执行许多选择。

我有 10 个看起来很像这样的游标(ext_temp 是外部表)

外部表有大约 22659 个寄存器。

我的脚本主循环看起来像这样

查询越来越多。而且我从这里知道我不能有任何索引或 DML。

那么,有没有办法让它跑得更快呢?我可以重写我的 plsql 脚本,但我认为我没有时间了。

更新:错过了一个重要的细节。

我不是数据库的所有者或 DBA。那家伙不希望他的数据库中有任何额外的信息(大约 3gb 的数据),而我们可以从他那里得到的只有外部表。他不允许我们创建临时表。我不会假装质疑他的理由,但外部表不是解决这个问题的方法。所以,我们被他们困住了。

0 投票
1 回答
3257 浏览

sql - 在 Oracle 中,如何创建与现有表具有完全相同结构的外部表?

我知道您可以像这样创建一个导出表:

但是我想为导入做这样的事情,这样我就可以创建一个与现有表具有相同结构的外部导入表,将数据加载到其中,然后执行一个简单的 INSERT INTO/SELECT FROM 查询来移动数据那里。有没有办法做到这一点?

我试过这个,但它不起作用:

但得到:

ORA-30657: 外部组织表不支持操作

0 投票
4 回答
13161 浏览

oracle - External Tables vs SQLLoader

So, I often have to load data into holding tables to run some data validation checks and then return the results. Normally, I create the holding table, then a sqlldr control file and load the data into the table, then I run my queries. Is there any reason I should be using external tables for thing instead? In what way will they make my life easier?

0 投票
1 回答
5098 浏览

oracle - 如何使用 Oracle 外部表并行直接路径加载?

几年前,Thomas Kyte 说过(这里):

我最喜欢使用外部表:

尽快加载这个非常大的文件。过去,将脚本设置为并行直接路径加载。协调所述脚本的触发。查看日志文件以确保它们全部完成。拆分输入文件或使用跳过和加载来分割文件。简而言之,屁股疼。

现在:

并行直接路径负载变得微不足道。

除了这不是有效的语法......

如何使用 Oracle 的外部表执行“并行直接路径加载”?

0 投票
2 回答
4033 浏览

oracle11g - Oracle 11g 外部表大小限制

在 Oracle 11g 中定义为外部表的文件是否有限制?根据http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/limits002.htm,最后一个参数External Tables file - Maximum size,它取决于操作系统。

这是否意味着外部表可以与底层操作系统或文件系统可以处理的一样大?

0 投票
3 回答
16509 浏览

oracle - 仅更改外部表 BADFILE、LOGFILE 和 DISCARDFILE 参数

我有几个用于将文件数据读入数据库的外部表,每个表都用于特定的文件规范。

对于单一格式的文件,通过将表指向新的默认目录和新文件名来重复使用该表。这工作正常,除了我现在需要动态更改 BADFILE、LOGFILE 和 DISCARDFILE 参数,同时保持其余访问参数不变。

有没有一种直接的方法可以做到这一点,而不必重新指定所有其他访问参数(列转换文件分隔符等)?

0 投票
2 回答
3466 浏览

database - 外部表 - 使用 FIXED 时出现“文件末尾的部分记录”错误

将 FIXED 参数与外部表一起使用时,我收到“文件末尾的部分记录”错误。

我正在使用 SQL Developer,Oracle 11g XE。

这是表的 DDL:

正在创建表 emp_load,但 select 语句失败并显示以下错误消息。执行时的错误消息select * from emp_load

它唯一有效的时候是我制作 foo.dat 1 行(如下所示)并将 FIXED 长度更改为 19-

这似乎表明我在换行符方面做错了,但我不知道是什么。

任何帮助,将不胜感激。提前致谢!

0 投票
1 回答
5077 浏览

oracle - Oracle 外部表日期错误

使用外部表将数据加载到 Oracle 11g R2 时出现以下错误。

外部表创建:

样本数据:

.

注意:我尝试了以下无济于事:

DATE_M DATE "dd.mm.yyyy",

DATE_M CHAR date_format DATE mask "DD/MM/RRRR"

0 投票
2 回答
6208 浏览

oracle - 带有 dba 目录的 Oracle 外部表

我想创建一个外部表,但没有CREATE ANY DIRECTORY权限(并且无法授予它)。很公平,我要求 DBA 运行以下命令:

他们做到了,最终对象具有以下脚本:

(我是从desc蟾蜍那里得到的)

然后我希望使用这个目录来创建我的外部表,脚本如下:

但是当我SELECT * FROM MY_EXT_TABLE,结果是臭名昭著

ORA-29913:执行 ODCIEXTTABLEOPEN 标注时出错
ORA-29400:数据磁带错误
KUP-04040:未找到 EXT_DATA_FILES 中的文件 the_external_file.txt
ORA-06512:在“SYS.ORACLE_LOADER”第 19 行

(在谷歌上有很多点击,但似乎没有一个相关)

我对语法很有信心,因为这与我们的 DEV 环境中使用的脚本完全相同。此外,所有涉及的文件和目录的权限都经过检查,没有低于775.

我在这里与 DEV(它在哪里工作)的唯一区别是该目录EXT_DATA_FILES不是由 MYAPPUSER 创建的。我试图为它创建一个同义词..但没有效果。

或许值得一提的是,我们说的是Oracle 10g。

我错过了一些明显的东西吗?这是允许的吗?