许多业务分析师严重依赖 Microsoft Excel 作为重要业务数据的主要来源之一。 在某些时候,他们需要将数据加载到 Oracle 数据库中,因此您经常会听到他们提出如下请求:
·复制到 Oracle 将Excel 数据
·导入Oracle 将Excel 数据
·加载到 Oracle 将 Excel 数据
·将 Excel 数据传输到 Oracle
他们的关键点是,无论业务用户如何询问,请求本质上都是一样的。 他们获得此类数据库数据加载的一些非常常见的方式包括:
业务用户向他们的信息系统人员发送正式的数据加载请求,以执行和交付加载的 Oracle 表。 但是,此过程可能需要时间——有时超过业务用户可以等待的时间。
业务用户通过使用 Quest®Toad® for Oracle 等功能强大的工具自行加载数据库数据,然后在 Toad 或其他一些数据库工具中处理该数据,实现真正的自助服务。 这种方法既快速又简单,而且 Toad for Oracle 可以轻松集成到业务分析师的工作流程中。
Toad for Oracle 也简化了这个用例的工作——如何将数据从 Excel 加载到 Oracle。 在我的示例中,我选择使用 Internet 电影数据库 (IMDB),因此下载了电影标题基本数据。 然后我解压缩该文件以获得名为 data.tsv 的 606 MB 制表符分隔的文本文件。 然后我将该数据文件重命名为movies.tsv,以免忘记文件包含的内容。
![如何使用 Toad将数据从Excel加载到Oracle.png 如何使用 Toad将数据从Excel加载到Oracle.png](/static/upload/image/20221104/1667550029213424.png)
将数据加载到 Oracle 中的解决方案
许多业务分析师强烈支持使用 Toad for Oracle 进行自助服务和加载数据的第二选择。 在本博客中,我将回顾一些有助于使用 Toad 轻松将 Excel 数据复制到 Oracle 的常见场景。 我将展示的技术在 Toad 用于此任务的两个主要界面中的工作方式基本相同: 模式浏览器 和 主菜单 --> 数据库 --> 创建 --> 表 。 我将演示如何使用 Schema Browser ,这通常是此任务最常见的选择。
![如何使用 Toad将数据从Excel加载到Oracle.png 如何使用 Toad将数据从Excel加载到Oracle.png](/static/upload/image/20221104/1667550040387124.png)
现在在下面的图 2 中,我在创建表屏幕内。 首先,我选择选中显示高级功能框,否则我将看不到显示所需的选项。 其次,我选择打开一个文件来读取表的列名。 它为此使用第一行数据。 第三,我选择了制表符分隔的文本文件。 最后,我按下了确定。 由于我的文件超过 600 兆字节,处理需要几秒钟。
![1667550047147184.png 2.png](/static/upload/image/20221104/1667550047147184.png)
在下面的图 3 中,我现在拥有表的所有列。 请注意,Toad 已将所有列的默认数据类型设置为 VARCHAR2。 另外Toad 还设置了每一列是可选的。 您可能需要修改这些默认选项,因为您比 Toad 更了解您的数据。 然后按 OK 按钮创建表并加载数据。
![1667550052145369.png 3.png](/static/upload/image/20221104/1667550052145369.png)
在下面的图 4 中,我现在创建了保存 IMDB 电影数据文件的所有数据所需的表。 请记住,该文件的大小超过 600 兆字节,因此数据加载可能需要一些时间。 但在这一点上,我们已经完成了一半以上。 现在我只需要将数据导入我新创建的表中。
![1667550057167845.png 4.png](/static/upload/image/20221104/1667550057167845.png)
在 下面的图 5 中,我现在 来调用 Toad for Oracle 的数据导入 通过打开右手鼠标 (RHM) 菜单并选择 Import --> Data 或 Main Menu --> Database-->Import-->Import Table Data 向导。 如您现在所见,我已设置为开始加载 MOVIES 表。 然而,这是一个多步骤向导,我们需要在加载表格之前指定其他信息。
![1667550062781338.png 5.png](/static/upload/image/20221104/1667550062781338.png)
在 下面的图 6 中,我现在位于数据导入向导的第二页,我在其中确定了文件类型和名称。 如果您回顾 图 2 ,您会发现我们已经回答了三个关键参数中的两个。 请注意,我们还没有说它是一个制表符分隔的文件。 还要记住,文件中的第一行包含列名,因此我们需要能够告诉 Toad 跳过这些。
![1667550067147474.png 6.png](/static/upload/image/20221104/1667550067147474.png)
在 下面的图 7 中,我现在位于数据导入向导的第三页,我将文件标识为制表符分隔的文本。
![1667550073985906.png 7.png](/static/upload/image/20221104/1667550073985906.png)
在 下面的图 8 中,我现在位于数据导入向导的第四页,我确定 Toad 应该在第 2 行开始读取表数据,因为第一行包含列名。 您应该花时间在向导的此页面上,以确保根据文本文件中数据的格式设置查看日期、时间和数字设置。
![1667550078157177.png 8.png](/static/upload/image/20221104/1667550078157177.png)
在 下面的图 9 中,我现在位于数据导入向导的第五页,Toad 已读取数据行的样本并显示它们以供您验证。 此外,Toad 会显示一个弹出窗口,以查看您希望如何将数据列映射到表列。 在这种情况下,它真的没关系。 但是如果我以不同的顺序创建表中的列或重新排序它们,那么选择必须是匹配名称。
![1667550084791692.png 9.png](/static/upload/image/20221104/1667550084791692.png)
在 下面的图 10 中,我现在位于数据导入向导的第六页,Toad 显示了您从前一页的弹出窗口中选择的结果,您在其中指定了数据文件字段到表列的映射。 同样,如果我对表中的列进行了重新排序,我将不得不在此页面上进行更改以正确地将字段与列对齐。
![1667550091298458.png 10.png](/static/upload/image/20221104/1667550091298458.png)
在 下面的图 11 中,我现在位于数据导入向导的第七页,其中 Toad 显示字段与在删除了列标题行的示例数据上执行的列匹配结果。 请注意,此处显示的列的大小取决于列名大小。 我需要按 size cols to data按钮。 如果我希望能够看到完整显示的列值,
![1667550098176208.png 11.png](/static/upload/image/20221104/1667550098176208.png)
在 下面的图 12 中,我现在位于数据导入向导的第八页,Toad 允许您指定控制实际数据库事务处理的一系列参数或选项。 如您所见,我已经说过要执行 500 行的批量数组插入,在加载之前截断表,并在每 500 行之后提交。 这些选择将影响实际数据加载所需的时间。 请记住,我的数据文件超过 600 兆字节,因此设置这些参数至关重要。 现在,当我按下执行按钮时,数据导入过程将开始。
![1667550106528556.png 12.png](/static/upload/image/20221104/1667550106528556.png)
在 下面的图 13 中,我现在正在执行数据导入过程。 我第一次运行时遇到错误,因为默认的列数据类型和大小是 VARCHAR(32) 并且电影标题比这长得多。 我只是选择中止,增加列长度,然后重新启动向导。 然后它运行完成而没有错误。 您是否注意到,即使在我在台式 PC 上运行的小型 VM 上,我每秒也能获得超过 66,000 条记录的负载!
![1667550112154082.png 13.png](/static/upload/image/20221104/1667550112154082.png)
结论
如果您是想要从 Excel 复制到 Oracle 的业务用户,请使用 Toad。 如上所示,您可以轻松地进行自动表创建和数据加载。 因此,您无需向信息系统人员请求帮助即可进行自助服务。 没有其他数据库工具比 Toad 更快速、更轻松地将数据从 Excel 复制到 Oracle。 此外,无论您使用的是 Toad 免费软件还是商业版 Toad,流程基本相同。
上一条:使用 Toad 生成 SQL 查询的提示
下一条:Toad for Oracle 功能详细介绍