Skip to main content

Oracle

连接类型

ODBC、OLEDB 和 OCI(64 位)

支持类型

读取和写入;数据库内

验证版本

数据库版本:12c 和 19c

ODBC 客户端版本:1.4.10.1010

OCI 客户端 18C

用于连接的 Alteryx 工具

标准工作流处理

输入数据工具

Input Data Tool Icon

链接

输出数据工具

Output Data Tool Icon

链接

数据库内工作流处理

库内连接工具

Blue icon with database being plugged in.

链接

数据流传入工具

Blue icon with a stream-like object flowing into a database.

链接

连接到 Oracle

连接到 Oracle 数据库

  • 10.02.00.01 版 64 位 OLEDB 提供程序存在定点十进制问题。Alteryx 建议使用 11g 或更高版本的驱动程序。

  • Oracle 连接使用 Oracle 调用接口 (OCI) 库连接到 Oracle 数据库。此库是随数据库一起安装的客户端软件的一部分。

  • 数据库内工具不支持 Oracle OLEDB。使用 ODBC 或 OCI。

  • 仅支持用户名和密码验证。

存储过程

Alteryx 支持 Oracle 存储过程的多行、多个 SQL 语句。可以通过 Pre SQL 和 Post SQL 语句访问。执行存储过程时不使用该引擎,此执行过程完全在数据库服务器上进行。

访问存储过程

  1. 将“输入”、“输出”或“运行命令”工具拖到 Alteryx Designer 画布上。

  2. 选择 连接文件 或数据库 菜单,然后选择“Oracle 数据库连接”。

  3. 输入数据配置 窗口中,选择 Pre SQL 语句 Post SQL 语句 。您可以在 SQL Editor 选项卡中输入一个或多个语句,也可以从 存储过程 列表中进行选择。

  4. 配置前 SQL 语句 配置后 SQL 语句 窗口和 存储过程 选项卡中,查看参数“数据类型”,然后为 OCl、ODBC 和 OLEDB 连接的每个存储过程参数输入值。选择所需的存储过程,然后选择 确定

    • 选择将覆盖字段中内容的存储过程。无法从 表格或查询文件格式选项 菜单访问 Oracle 连接的存储过程。

    • 只会列出带 IN 参数的存储过程。

    • Oracle 数据类型映射到 Alteryx 的方式可能有所不同,具体取决于连接是 OLI、ODBC 还是 OLEDB。

    • 字符串参数必须在输入的值周围具有单个引号。

    • 在 Oracle 中调用存储过程的 SQL 语法应采用 CALL "sproc_name"(可选参数 1、可选参数 2...)的格式。

    • 在输入中使用时,值必须表示数据库中的值。

    • 您可以选择是希望默认情况下打开 SQL 编辑器 还是 存储过程 选项卡。如果“SQL 编辑器”选项卡中没有文本,则默认选项卡为 存储过程

不支持的数据类型

以下数据类型不受支持且无法被输入到 存储过程参数 值字段中:

  • 二进制类型:原始、长 RAW 和 BLOB

如果存储过程中包含不受支持的数据类型,则:

  • 设计器将数据类型设置为不受支持。

  • 数据网格中的值列变为只读,并且禁用 确定 按钮,指示存储过程无法运行。

限制

  • 表格中的最大列数:1000

  • 最大列名长度:30 个字符

  • 最大行大小:4GB(不包括 LOB 大小)

  • 可变长度字符串可能返回 NULL 而不是空。

  • 所有版本 - INT64 作为固定数字传输。不支持 SQL_C_BIGINT。

  • 双精度数作为双精度浮点数传输。

  • 单精度数作为单精度浮点数传输。

  • 10.02.00.01 64 位 - 定点十进制问题

  • 双精度数作为双精度浮点数传输。

  • 单精度数作为单精度浮点数传输。

  • int64 作为双精度数传输。

  • 布尔值作为字符串 (1) 传输。

  • 日期时间作为字符串 (19) 传输。

  • 双精度数作为双精度浮点数传输。

  • 单精度数作为单精度浮点数传输。

使用 ODBC OleDB 驱动程序无法检索空间数据。要在 Oracle 数据库中使用空间数据,请使用 OCI 驱动程序 进行连接。

已知问题

  • 具有 ODBC 连接的单个工作流不能包含使用同一驱动程序的 OleDB 或 OCI 连接。

  • OCI 是其自己的 API,独立于 ODBC,对连接器使用特定调用,因此其行为可能与 ODBC 不一致。

  • 如果要通过 OCI 连接连接到包含 Unicode® 编码数据的 Oracle 数据库,请在“输入数据工具配置”窗口中选择“强制 SQL WChar 支持”。然后,字符列将被视为 SQL_WCHAR、SQL_WVARCHAR 或 SQL_WLONGVARCHAR。如果是 ODBC连接,请使用“Oracle ODBC 驱动程序配置-变通办法”中的“强制 SQL_WCHAR 支持”选项。

  • 如果密码包含特殊字符或以特殊字符开头,与 Oracle 数据库的连接将会失败,并提示连接错误。非引号标识符必须以数据库字符集中的字母字符开头。带引号的标识符可以以任何字符开头。

    为避免连接时出现错误,请将密码用双引号括起来。