向 Oracle 数据库添加 ST_Geometry 类型
使用创建空间类型地理处理工具或 Python 脚本,可以将 Esri ST_Geometry 类型、子类型和函数添加到 Oracle 数据库。
执行此操作时,会将名为 sde 的用户添加到数据库。sde 用户拥有 ST_Geometry 类型、子类型、函数和表。
以下步骤对如何运行创建空间类型地理处理工具在 Oracle 数据库中安装 ST_Geometry 类型进行了说明:
- 从 ArcGIS 客户端安装位置的 DatabaseSupport 目录复制 libst_shapelib(对于 Windows 则为 st_shapelib)库并将其移动到 Oracle 服务器的某一位置上。
确保使用适合 Oracle 服务器操作系统的库。
运行创建空间类型工具或脚本的客户端计算机必须能够访问服务器上放置库的目录。如果将库放置到 UNIX 或 Linux 计算机上,请确保数据库管理员对该文件夹具有读访问权限,并对库文件具有执行权限。
- 启动 ArcCatalog 或 ArcMap,然后打开目录 窗口。
- 创建连接以访问 Oracle 数据库。以 Oracle 系统数据库管理员身份登录。
- 打开创建空间类型工具。
可以使用搜索 窗口搜索工具或者从数据管理 工具箱的“工作空间”工具集中打开工具。
- 将在第 3 步中创建的数据库连接添加到输入数据库文本框中。
- 在 SDE 用户密码文本框中输入 sde 数据库用户要使用的密码。
- 如果要创建一个表空间来用作 sde 用户的默认表空间,则在表空间名称文本框中输入其名称。
将在 Oracle 的默认存储位置中创建大小为 400 MB 的表空间。如果想要控制表空间的放置位置或表空间的大小,请先在 Oracle 中创建表空间,然后在表空间名称文本框中指定现有表空间。该工具会将预先存在的表空间设置为 sde 用户的默认表空间。
- 对于 ST_Geometry 形状库路径文本框,浏览至您放置 libst_shapelib 或 st_shapelib 文件的 Oracle 服务器目录,或输入一个路径,路径包含文件名。
例如,如果您将 libst_shapelib.so 文件放置在 UNIX 服务器 boxy 上的目录 libraries 中,则输入 /boxy/libraries/libst_shapelib.so。
- 单击确定以运行工具。
将在 sde 用户方案中创建 ST_Geometry 类型、子类型和函数,并在 Oracle 中创建一个形状库条目。
如果打算使用 ST_Transform 函数执行地理变换,则必须从 ArcGIS for Desktop 安装目录复制 pedata 文件夹,将其放置到 Oracle 服务器上,并在服务器上设置指向该位置的 PEDATAHOME 环境变量。