假设我们有一个现有的siebel列,并且该列也有相应的映射eim列。如果我通过从后端运行alter query将此siebel基表的列的长度从100更改为200varhcar。它将如何影响EIM流程?导入过程会成功吗?
此致 罗宾
答案 0 :(得分:2)
如果您有兴趣从概念上了解,我可以预见这些含义。
a)使用alter table添加的表列实际上没用,因为应用程序无法使用它,因为Siebel存储库中缺少其定义。
b)如果更改现有列的长度,应用程序仍将使用Siebel存储库中提到的长度。
c)EIM进程将在运行作业之前加载数据字典时忽略新的列长度。
d)最后,在代码迁移期间,每次都必须执行alter table,因为DDLSync进程无法处理您的场景。
答案 1 :(得分:0)
我建议您不要更改现有vanilla表列的长度,而是扩展数据库表以添加新列。正如另一张海报所提到的,您应该使用Siebel Tools执行此操作。然后,您还需要将此新字段的引用添加到EIM组件中(您也可以使用Siebel Tools)。
这是一种最佳做法。如果您的客户曾经进行过Oracle完成的Siebel代码审查,您将被告知要执行上述操作(而不是您正在考虑的操作)。
答案 2 :(得分:0)
使用alter table命令更改列长度只会在数据库层中更改它,这对siebel立场没有任何影响。 EIM表仍然有效,因为它们将使用工具发送的存储库中提到的列长度。如果您不在工具中更改它并应用表格,我不认为这些更改会起作用。
答案 3 :(得分:0)
我不建议你这样做。在这种情况下,可能没有什么会出错。 EIM列将加载长达100个字符的数据,但是从gui中,您最多可以插入200个字符。意想不到的事情可能会出错,我们需要更好地了解您的应用程序来回答这个问题。