WEB开发网
开发学院软件开发Java 精通 Grails: Grails 与遗留数据库 阅读

精通 Grails: Grails 与遗留数据库

 2009-10-26 00:00:00 来源:WEB开发网   
核心提示: 要运行该脚本,需要输入:groovyrestoreAirports.groovyairports.xml切记,精通 Grails: Grails 与遗留数据库(4),对于要工作的表之间的关系而言,关系的一 的方面的主键字段一定要与关系的多 的方面的外键字段相匹配, 将机场数据安全地备份之后(大概

要运行该脚本,需要输入:

groovy restoreAirports.groovy airports.xml

切记,对于要工作的表之间的关系而言,关系的一 的方面的主键字段一定要与关系的多 的方面的外键字段相匹配。例如,储存于 airport 表的 id 列中的值一定要与 flight 表的 arrival_airline_id 列中的值相同。

转换 USGS 数据

USGS 将机场的数据提供为一个 shapefile。这是一个交换地理数据的固定文件格式。一个 shapefile 至少由三个文件组成。.shp 文件包含地理数据 — 此处指每个机场的纬度/经度。.shx 文件是一个空间索引。.dbf 文件是 — 您猜对了 — 一个很好的古老的 dBase 文件,它包含了所有的非空间数据(此处指机场名、IATA 代码等)。

我使用了 Geospatial Data Abstraction Library(GDAL)— 一套处理地理数据的开源的命令行工具集 — 来将 shapefile 转换为文中使用的地理标记语言(Geography Markup Language,GML)文件。我使用的具体的命令为:

ogr2ogr -f "GML" airports.xml airprtx020.shp
您还可以使用 GDAL 将数据转换为逗号分割值(comma-separated value,CSV)、GeoJSON、Keyhole 标记语言(Keyhole Markup Language,KML)以及其他很多种格式。

为了确保自动编号的 id 字段被恢复为相同的值,一定要在恢复表前将它们全部删除。这样就可以在下次启动 Grails 重新创建表时将自动编号重置为 0。

将机场数据安全地备份之后(大概其他表中的数据也已经安全备份了),那么现在您就可以开始试验一些新的 “遗留” 数据了。不懂么?看完下一小节您就会明白了。

导入新的机场数据

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:精通 Grails Grails

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接