我正在使用PowerDesigner 16.5,并且正在为Netezza 5.0制作物理模型。
我需要放置一个'分发类型'在'选项'每个表的选项卡,这自然非常重要。然而,我正在寻找一种更有条理的方式来放置我的分发类型和列表。
我想通过VBScript输入此信息。但是我很难找到通过脚本实际解决这些选项的正确命令。我通常会使用' GetPhysicalOptionValues'但是“分发类型”'实际上似乎并不是一个物理选择。这是一个正常的选择。 PowerDesigner的文档似乎没什么帮助。
TL; DR:希望通过VBScript编写我的Netezza分发密钥。无法找到正确的变量。
答案 0 :(得分:1)
你的解决方案让我走上了正确的道路。它还帮助我找到了这些: SetExtendedAttribute("分布""散列&#34) SetExtendedAttribute(" DistributionColumnList""的ColumnName&#34)
答案 1 :(得分:0)
您应该编辑DBMS并在Script / Objects / Table中包含一个名为Sql Distribute Option的新文本项,其中包含:
SELECT t.owner,t.tablename,
CASE
WHEN (m.relid isnull) THEN 'distribute on random '
ELSE
CASE
WHEN (m.distseqno = 1) THEN 'distribute on hash ('
ELSE ', '
END
|| m.attname
||
CASE
WHEN ( m.distseqno =
(
SELECT max(n.distseqno)
FROM _v_table_dist n
WHERE n.relid = m.relid)) THEN ')'
ELSE ''
END
END
FROM _v_table t
left outer join _v_table_dist m ON (m.relid = t.objid)
WHERE 1 = 1 [
AND t.owner = %.q:OWNER%] [
AND t.tablename = %.q:TABLE%]
ORDER BY t.objid, m.distseqno
应该这样做,至少在我的情况下
此致