精通 Grails: Grails 与遗留数据库
2009-10-26 00:00:00 来源:WEB开发网要运行该脚本,需要输入:
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。
将机场数据安全地备份之后(大概其他表中的数据也已经安全备份了),那么现在您就可以开始试验一些新的 “遗留” 数据了。不懂么?看完下一小节您就会明白了。
导入新的机场数据
- ››精通Photoshop之通道详解
- ››精通 Grails: 使用 Grails 进行单元测试(单元测试...
- ››精通 Grails: 身份验证和授权
- ››精通 Grails: 文件上传和 Atom 联合
- ››精通 Grails: 了解插件
- ››精通 Grails: 创建自定义插件
- ››精通 Grails: 在企业中使用 Grails
- ››精通 Grails: Grails 与移动 Web
- ››精通 Grails: Grails 与遗留数据库
- ››精通 Grails: RESTful Grails
- ››精通 Grails: 用 JSON 和 Ajax 实现异步 Grails
- ››精通 Grails: 用定制 URI 和 codec 优化 Grails 中...
赞助商链接