日期:2014-05-16 浏览次数:20477 次
FME工具没使用过,研究半天没有结果,放弃,想起以前使用的st_geometry,利用他在数据库内实现更新,应该可以实现,下面测试果然成功;
利用oracle过程实现从一个表更新另一个表的空间数据,sql如下:
declare cursor t1 is select * from tableA; begin for rec in t1 loop update tableB t set t.shape=sde.st_geomfromtext(sde.st_astext(rec.shape),22) where t.name=rec.name and t.yhss ='lhd'; end loop; end;执行结果:成功!
主要用到
st_geomfromtext和sde.st_astext两个st_geometry函数,注意sde.st_geomfromtext(sde.st_astext(rec.shape),22) 22代表的空间参考需要和源表一致。