利用工具将shp文件导入到oracle spatial中
程序员文章站
2022-06-13 08:08:36
...
1 下载shp2sdo 工具,将工具放在 oracle按照目录下的bin目录下
2 cmd 到 shp文件目录下,运行命令
shp2sdo.exe china imap_china -g geom -d -x (-180,180) -y (-90,90) -s 4326 -t 0.5 -v
3 将表 imap_china.sql导入数据库,创建表
sqlplus gis/gis@orcl
4 将数据导入数据库
sqlldr gis/gis@orcl imap_china
5 创建索引
CREATE Index imap_china_STATEAREA_idx ON imap_china(GEOM) INDEXTYPE is MDSYS.SPATIAL_INDEX
6 测试SQL :
select * from imap_china t where SDO_RELATE(t.geom, MDSYS.Sdo_Geometry(2001, 4326, MDSYS.Sdo_Point_Type(113.119526, 34.84593, null), null, null ), 'mask=ANYINTERACT querytype=WINDOW' ) = 'TRUE';
7 geoserver 发布
7、Oracle数据处理(对Oracle地理空间数据进行升级) ------------------必须,要不然有可能会报错。 用CMD重复登录数据库操作 EXECUTE SDO_MIGRATE.TO_CURRENT('imap_china','GEOM') imap_china------为导入数据的表名 GEOM------imap_china.sql时-d的参数 没有这一步,geoserver发布图层后,Tomcat后台可能会报ERROR: [geoserver.ows] Rendering process failed Caused by:java.lang.ArithmeticException: /by zero,而图层也不难正常显示,会报Rendering process failed /by zero错误