描述
在现有数据库中创建地理数据库系统表、存储过程、函数和类型,从而启用数据库中的地理数据库功能。
使用方法
您必须在计算机(通过其连接到数据库并启用地理数据库功能)上安装 ArcGIS Desktop(Desktop Standard 或 Desktop Advanced)、ArcGIS Engine Geodatabase Update 或 ArcGIS Server。
如果您的 ArcGIS 软件作为数据库服务运行在相同的云平台和地区,则可以使用此工具在以下数据库云服务产品中创建地理数据库:Microsoft Azure SQL Database(单个实例)和 Amazon Relational Database Service (RDS) for SQL Server。
为工具提供的数据库连接文件必须以具有地理数据库管理员资格的用户身份进行连接。以 sde 用户身份进行连接,以便在 IBM Db2、Oracle、PostgreSQL 或 SAP HANA 数据库中创建地理数据库。对于 Microsoft SQL Server,您可通过名为 sde 的用户身份进行连接,以创建 sde 方案地理数据库,或以 SQL Server 实例中的 dbo 用户身份进行连接,以便在数据库的 dbo 方案中创建地理数据库。
注:
从 ArcGIS 10.7 和 ArcGIS Pro 2.3 开始,您无法在 Oracle 中创建用户方案地理数据库。
如果您要连接到 SQL Server 数据库,SQL Server 实例必须使用不区分大小写的排序规则。同时该数据库必须将 READ_COMMITTED_SNAPSHOT 和 ALLOW_SNAPSHOT_ISOLATION 设置为 ON。
创建地理数据库的用户需要特定权限。有关创建地理数据库所需权限的信息,请参见适合您数据库的主题:
您必须先配置 st_geometry 库,然后才能在 Oracle 中启用地理数据库功能。有关详细信息,请参阅在 Oracle 中创建地理数据库。
启用 PostgreSQL 中的地理数据库功能之前,必须将 st_geometry 库放置在 PostgreSQL 服务器的 PostgreSQL lib 目录中。有关详细信息,请参阅在 Linux 上的 PostgreSQL 中创建地理数据库或在 Windows 上的 PostgreSQL 中创建地理数据库。
一旦创建了地理数据库,则无法重命名存储该地理数据库的数据库。数据库名称存储在地理数据库系统表中,并用于完全限定表和要素类的名称;因此,使用数据库工具更改数据库名称会导致无法访问地理数据库数据。
语法
EnableEnterpriseGeodatabase(input_database, authorization_file)
参数 | 说明 | 数据类型 |
input_database | 为数据库(将在其中启用地理数据库功能)提供路径和连接文件名。必须以具有地理数据库管理员资格的用户身份进行连接。 | Workspace |
authorization_file | 授权 ArcGIS Server 时创建的密钥代码文件的路径和文件名。此文件位于 Windows 的 \\Program Files\ESRI\License<release#>\sysgen 文件夹或 Linux 的 /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgen 目录中。如果尚未执行此操作,则请授权 ArcGIS Server 来创建此文件。 您可能需要从 ArcGIS Server 计算机将密钥代码文件拷贝到工具可以访问的位置。 | File |
派生输出
名称 | 说明 | 数据类型 |
out_workspace | 已启用的企业级地理数据库。 | 工作空间 |
代码示例
此脚本使用位于默认 ArcCatalog 数据库连接位置的现有数据库连接文件 (my_db_connection.sde) 来通过远程服务器上的密钥代码文件启用地理数据库功能。
import arcpy
arcpy.EnableEnterpriseGeodatabase_management(
"Database Connections\my_db_connection.sde",
"//myagsserver/Program Files/ESRI/License/sysgen/keycodes")
此脚本使用位于用户定义位置的现有数据库连接文件 (database1.sde) 来通过本地计算机上用户定义位置处的密钥代码文件启用地理数据库功能。
import arcpy
arcpy.EnableEnterpriseGeodatabase_management("C:\myconnections\database1.sde",
"C:\authfiles\keycodes")
环境
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是