原文发布时间:2015-04-28 09:59:34
作者:活力贝贝
前段时间群友问到一个案例,数据库中有200张左右的表,表中有一个字段,存储了对应表需要更新的字段名和字段值,由于数据表实在太多,想要利用FME来自动按照字段和值来更新数据,部分样例数据如下:

可以看出,各行数据字段名称和数量并不统一,这种数据该如何通过转换器拆分后输出到指定字段呢?我最开始时想到的是先得到拆分后列表,然后循环降级得到项,再取字段名称和字段值,再利用AttributeCreator转换器赋值给相应字段,利用AttributeCreator赋值时,字段名可以选择下拉菜单的第二项,也就是Attribute Value(属性值)实现动态字段赋值。

由于原数据是Esri Geodatabase (Personal Geodb)格式,那么用数据库更新的方法来实现该功能应该更好,那样不用另外再新建一个写模块了,所以我决定换一种方式来做。
我所知道可以用来更新数据库的转换器有两个,一个是DatabaseUpdate,另外一个是SQLExecutor,由于DatabaseUpdate为对话框模式,且更新字段中无法选择和输入动态字段,我决定使用SQL语句来实现动态字段属性更新。
</

本文介绍了如何利用FME的SQLExecutor转换器,结合Schema读模块,动态更新数据库字段。当面对字段名称和数量不统一的数据时,通过获取字段类型信息,构建SQL语句进行更新操作,解决了在大量数据表中自动化更新的问题。

1380

被折叠的 条评论
为什么被折叠?



