使用ArcPy来确定底层数据库

795
1
2014-08-28 10:06
状态:开放
标签(2)
AndrewChapkowski
金宝搏吧
如果arcpydescribe函数能返回所连接的数据库名称,那就太好了。

例如:
>>> print archpy . description (r"c:\temp\scratch.gdb").databaseName
文件Geodatabase
>>> print archpy . description (r"c:\temp\someconnection.sde").databaseName
甲骨文
>>> print archpy . description (r"c:\temp\someconnection.sde").databaseName
PostGRESql

等等……

这确实有助于开发处理特定数据类型时不同数据库之间的细微SQL差异。

谢谢你!


1评论
MatthewYager
通过

对于你的例子,你可以设计一个例程来告诉你这些信息
任何以GDB结尾的东西都将是文件geodatabase
在一个侧面连接上做一个描述,看看实例会告诉你数据库是基于连接字符串的。

  • sde::状态"置疑" svr-gis-01是SQL服务器
  • sde: oracle11g: GISDATA是Oracle 11g
Desc = arcpy。description (Database Connections\Localhost SQL.sde) cp = desc.connectionProperties print cp.instance >sde::状态"置疑" svr-gis-01

我看到的唯一问题是旧式SDE连接,其中实例将是端口号。