你好,
谢谢您的回答和迟到抱歉。
你的两个方法似乎有趣,但没有回答我的问题。
事实上,我需要一个解决方案,我没有指定没有价值各个领域。
我有数百个领域的表和数千个。我们的数据模型是不断发展的,它是几乎不可能检查每场每次。
这就是为什么我使用动态的作家。但是,作为普通的作家这样做,他们迫使默认列NULL值。
现在我使用的是SQL脚本,由默认值替换每个NULL和空值做这项工作。
祝你今天愉快
你好@savoierider,
有几个解决方法,可以帮助我们的同时,对提供这方面的支持团队工作(相关:FMEENGINE-8945)。
方法1:
这种方法允许数据库设置基于在pgAdmin的列属性的默认值。
方法2:
使用变压器来设置使用PostgreSQL的作家的默认值,并写入功能。这可以通过使用许多不同的变压器来实现,但这个例子中使用NullAttributeMapper与PostgreSQL的作家写的功能之前设置的默认值。
也可以在转换器中使用条件语句AttributeManager。
我重视演示如何这个工程样品的工作空间。如果您想尝试运行工作空间,首先在被称为“TestCreateColumns”与4列的公共架构创建pgAdmin的新表:
列名 | 类型 |
C1 | 文本 |
C2 | 字符 |
C3 | 双击此列上的默认值——我使用了100 |
C4 | 双 |
接下来,运行工作区(提示时设置数据库连接)与一个书签启用并查看pgAdmin的输出。
感谢对尖端,不幸的是我有多达20个属性INSERT。
如果你只是在作家要素类型一个属性和作家被设置为插入只插入一个属性。
你好@gio,
感谢对你的答案和你的时间。不幸的是,这不是正是我寻找。
在Writer级别添加一个默认值让我确定每列有即使我自己也没有这种数据的默认值。
=>由于我MCD是不断变化(不是每一天,但每月),我需要检查所有这些领域的每一次我编辑我的剧本,并添加/删除字段默认。
=>要大量的工作(很长的时间consumming)。
使用属性的创造者:同上(但是那是我第attenpted来解决这个麻烦)。
使用脚本:目前我在做什么,但在SQL直接书面方式后:也许维护所有这些默认值的最简单方法(但需要SQL技能有东西干净)。
事实上,我的脚本可以帮助我们从我们的客户数据模型数据导入到我们自己的数据模型。我的目标是创建一个脚本,可以通过不具有在FME并为每一个客户的良好技能的人是使用。
该脚本包含所有你在作家需要,所以我的同事只需要输入客户特征,做一些简单的转换(重命名字段,改变一些值不了多少),并把它插入到作家的特点。
如果某些FME developpers的只能在定义的列添加一个选项INSERT这可能是一个非常好的事情。
在作家层面:
最简单的方法是在Writer级别设置默认值。(如果整个列具有被设置为相同的值)
只需右键点击的作家和编辑使用属性的属性。输入默认值。
此前作家:
使用属性的创造者,进口列直接构成表。
使用脚本获取人的约束。获取默认值,并有条件地(为空或丢失),使用例如一个属性的创造者的属性设置为它。