这些属性指定 IBM® Campaign 可以访问的数据库,这些属性还可以控制查询构成方式的众多方面。
您在 IBM® Campaign 中添加的每一个数据源都由
partition >
partition [n] >
dataSources >
<data-source-name> 下面的一个类别进行表示。
|
在 IBM® Marketing Platform 中,必须将每一个分区的 IBM® Campaign 系统表数据源命名为 UA_SYSTEM_TABLES,并且每一个 IBM® Campaign 分区在“配置”页面上都必须具有 dataSources > UA_SYSTEM_TABLES 类别。
|
IBM® Campaign 根据数据源类型来选择其数据源访问库。 例如,
libora4d.so 用于 Oracle 连接,而
libdb24d.so 用于
DB2® 连接。在大多数情况下,缺省选择便是恰当的。但是,如果能证明缺省值在您的
IBM® Campaign 环境中是错误的,那么可以更改
AccessLibrary 属性。 例如,64 位
IBM® Campaign 提供两个 ODBC 访问库:一个适用于兼容 unixODBC 实现 (
libodb4d.so) 的 ODBC 数据源,另一个兼容 DataDirect 实现(
libodb4dDD.so,由
IBM® Campaign 用于访问诸如 Teradata 之类的数据源)。
IBM® Campaign 包含两个附加库以用于
AIX® ODBC 驱动程序管理器(后者支持 ODBC ANSI API 而非 ODBC Unicode API):
AliasPrefix 属性指定在使用新维表并写入到新表的情况下,
IBM® Campaign 如何构成
IBM® Campaign 自动创建的别名。
此属性确定 IBM® Campaign 是否尝试对选择进程中使用的基本表(来自同一数据源)执行 SQL 连接;否则,将在
Campaign 服务器上执行等效连接。
Campaign|partitions|partition[n]|dataSources|dataSourcename
在此情况下,IBM® Campaign 生成单个 SQL
CASE 语句分段,然后在
Campaign 应用程序服务器上进行“按字段划分分段”处理。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定 IBM® Campaign 是否在数据库中创建临时表。创建临时表可显著提高营销活动的业绩。
当值为 TRUE 时,已启用临时表。在每次对数据库发出查询时(例如,通过“细分市场”流程),将在数据库中的临时表中写入所产生的标识。发出其他查询时,
IBM® Campaign 可以使用该临时表从数据库中检索行。
一些 IBM® Campaign 操作(例如
useInDbOptimization)依靠该能力来创建临时表。如果未启用临时表,那么 IBM Campaign 会将所选标识保留在
IBM® Campaign 服务器内存中。 其他查询将从数据库中检索标识,并将其与服务器存储器中的标识进行匹配。这可能会降低性能。
|
通常,将 AllowTempTables 设置为 TRUE。要覆盖特定流程图的值,请以编辑方式打开该流程图,从 管理菜单 中选择 高级设置,然后选择“服务器优化”选项卡上的 不允许使用此流程图的临时表。
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
如果将此属性设置为 TRUE,那么在您登录到数据源时
Campaign 不会提示您输入用户名和密码。如果将此属性设置为
FALSE,那么在您每次登录到数据源时
Campaign 都会提示您输入用户名和密码。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性定义 Campaign 一次传递给数据库的数据块的最大大小(以记录数量为单位)。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
ConditionalSQLOpenBracket 属性指定用于指示原始 SQL 定制宏中条件分段开头的括号类型。仅当存在临时表时,才会使用
ConditionalSQLOpenBracket 和
ConditionalSQLCloseBracket 属性所指定的括号中括起的条件化分段,如果没有临时表,那么将忽略这些条件化分段。
Campaign|partitions|partition[n]|dataSources|dataSourcename
缺省情况下 (N=0),
Campaign 将为每个操作建立一个指向数据源的新连接;如果
Campaign 保持连接的高速缓存并且连接可供复用,那么
Campaign 将使用高速缓存的连接,而不是建立新连接。
如果设置不为 0,那么在进程使用完连接后,
Campaign 会将指定数量的连接保持打开状态,时间长度是
InactiveConnectionTimeout 属性所指定的值。 在此时间到期后,将从高速缓存中除去连接并且连接关闭。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign 使用
DateFormat 属性的值来确定在使用
Campaign 宏语言或在解释日期列中的数据时如何解析
date 格式的数据。
将 DateFormat 属性的值设置为
Campaign 期望从此数据源中接收数据的格式。此值必须与您的数据库用于显示日期(在选择时)的格式相匹配。对于大部分数据库,此设置与
DateOutputFormatString 属性的设置相同。
Campaign|partitions|partition[n]|dataSources|dataSourcename
DateOutputFormatString 属性指定
Campaign 向数据库中写入任何日期(如营销活动开始或结束日期)时要使用的数据类型的格式。将
DateOutputFormatString 属性的值设置为数据源对
date 类型的列所期望的格式。 对于大部分数据库,此设置与
[data_source_name] > DateFormat 属性的设置相同。
可以将 DateOutputFormatString 属性设置为针对
DATE_FORMAT 宏中的
format_str 指定的任何格式。
DATE_FORMAT 宏接受两种不同类型的格式。一种是标识(例如,
DELIM_M_D_Y 和
DDMMMYYYY,与
DATE 宏接受的格式相同),而另一种是格式字符串。
DateOutputFormatString 属性的值必须是格式字符串 - 不得是
DATE 宏标识中的一个。通常,请使用其中一种定界格式。
CREATE TABLE date_test (F1 DATE)
INSERT INTO date_test VALUES ('03/31/2004')
如果数据库允许 INSERT 命令成功完成,那么表示您已选择了正确的格式。
Campaign|partitions|partition[n]|dataSources|dataSourcename
通常,您应按照以下方式来设置 DateTimeFormat:在按照表“按数据库选择日期”中所述确定
DateFormat 值之后,在
DT_ 前面添加
DateFormat 值。
Campaign|partitions|partition[n]|dataSources|dataSourcename
DateTimeOutputFormatString 属性指定
Campaign 向数据库中写入任何日期时间(如营销活动开始或结束日期和时间)时要使用的 datetime 数据类型的格式。将
DateTimeOutputFormatString 属性的值设置为数据源对
datetime 类型的列所期望的格式。对于大部分数据库,此设置与
[data_source_name] > DateTimeFormat 属性的设置相同。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性确定在 DB2® 中填充临时表时
IBM® Campaign 是否使用
not logged initially SQL 语法。
设置为 TRUE 时,此属性将对插入到临时表这一操作禁用日志记录,这将提高性能并降低数据库资源消耗。设置为
TRUE 时,如果临时表事务由于任何原因而失败,那么表将损坏并且必须予以删除。所有先前包含在表中的数据都将丢失。
如果您的 DB2® 版本不支持
not logged initially 语法,请将此属性设置为
FALSE。
Campaign|partitions|partition[n]|dataSources|dataSourcename
设置为 TRUE 时,此属性将对插入到用户表这一操作禁用日志记录,这将提高性能并降低数据库资源消耗。设置为
TRUE 时,如果用户表事务由于任何原因而失败,那么表将损坏并且必须予以删除。所有先前包含在表中的数据都将丢失。
Campaign|partitions|partition[n]|dataSources|dataSourcename
如果为 DefaultScale 设置的值超过字段的精度,那么将对这些字段使用
DefaultScale=0。例如,如果精度为 5,并且
DefaultScale=6,那么将使用值 0。
Campaign|partitions|partition[n]|dataSources|dataSourcename
ODBC 数据源需要 DefaultTextType 属性。此属性指示
Campaign 如何在源文本字段来自不同数据源类型的情况下在目标数据源中创建文本字段。例如,源文本字段可能来自平面文件或者不同类型的 DBMS。如果源文本字段来自相同类型的 DBMS,那么将忽略此属性,并且在目标数据源中使用来自源文本字段的数据类型创建文本字段。
Campaign|partitions|partition[n]|dataSources|dataSourcename
DeleteAsRecreate 属性指定在输出进程配置为
REPLACE TABLE 并且不支持
TRUNCATE 的情况下,
Campaign 是删除并重新创建表,还是仅从表中删除。
值为 TRUE 时,
Campaign 将删除表并重新创建。
值为 FALSE 时,
Campaign 将从表中执行
DELETE FROM。
Campaign|partitions|partition[n]|dataSources|dataSourcename
DeleteAsTruncate 属性指定在输出进程配置为
REPLACE TABLE 时,
Campaign 是使用
TRUNCATE TABLE 还是从表中删除。
值为 TRUE 时,
Campaign 将从表中运行
TRUNCATE TABLE。
值为 FALSE 时,
Campaign 将从表中运行
DELETE FROM。
|
对于 Netezza®、Oracle 和 SQL Server 为 TRUE。
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定 Campaign 向临时表添加数据的方式。
设置为 FALSE 时,
Campaign 将使用一个命令来执行直接“创建并填充”SQL 语法。例如:
CREATE TABLE <table_name> AS ...(适用于 Oracle 和
Netezza®)和
SELECT <field_names> INTO <table_name> ...(适用于 SQL Server)。
设置为 TRUE 时,
Campaign 将创建临时表,然后使用单独命令直接在表之间填充此临时表。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 Campaign 数据源配置属性,您可以指定引用同一物理数据源的多个逻辑数据源。例如,您可以为同一数据源创建两组数据源属性,一个包含
AllowTempTables = TRUE,另一个包含
AllowTempTables = FALSE。其中每个数据源在
Campaign 中具有不同名称,但是如果它们引用同一个物理数据源,那么将具有相同 DSN 值。
Campaign|partitions|partition[n]|dataSources|dataSourcename
仅当 Campaign 数据源为 SQL Server 时,
DSNUsingOSAuthentication 属性才适用。当 DSN 配置为使用
Windows™ 认证方式时,请将此值设置为
TRUE 。
Campaign|partitions|partition[n]|dataSources|dataSourcename
缺省情况下,此属性设置为 FALSE,并且当基本表和维表是同一数据库并且关系字段相同时(例如,AcctID 到 AcctID),
Campaign 假定您不希望执行连接。
Campaign|partitions|partition[n]|dataSources|dataSourcename
值为 TRUE 时,数据库将执行重复数据删除,对数据库生成的 SQL 查询具有以下格式(如果适用):
SELECT DISTINCT key FROM table
值为 FALSE 时,
Campaign 服务器将执行重复数据删除,并且针对数据库生成的 SQL 查询具有以下格式:
SELECT key FROM table
|
您希望 Campaign 应用程序服务器执行重复数据删除以降低数据库上的资源消耗/负载。
|
无论您为此属性指定的值如何,Campaign 都将自动确保根据需要对键进行重复数据删除。此属性仅用于控制进行重复数据删除的位置(在数据库上还是在
Campaign 服务器上)。
Campaign|partitions|partition[n]|dataSources|dataSourcename
值为 TRUE 时,数据库将执行排序,并且对数据库生成的 SQL 查询具有以下格式:
SELECT <key> FROM <table> ORDER BY <key>
值为 FALSE 时,
Campaign 服务器将执行排序,并且针对数据库生成的 SQL 查询具有以下格式:
SELECT <key> FROM <table>
Campaign|partitions|partition[n]|dataSources|dataSourcename
UAC_*,当
ExtractTablePrefix 属性的值为缺省值时,此值将排除临时表和抽取表。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 ExtractTablePostExecutionSQL 属性来指定在创建和填充抽取表之后要立即运行的一个或多个完整 SQL 语句。
以下描述了可用于 ExtractTablePostExecutionSQL 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
ExtractTablePrefix 属性指定在
Campaign 中所有抽取表名称前面自动添加的字符串。两个或更多数据源指向相同数据库时,此属性非常有用。有关详细信息,请参阅
TempTablePrefix 描述。
Campaign|partitions|partition[n]|dataSources|dataSourcename
ForceNumeric 属性指定
Campaign 是否作为数据类型
double 来检索数字值。值设置为
TRUE 时,
Campaign 将作为数据类型
double 来检索所有数字值。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
InsertLogSize 属性指定在
Campaign 快照进程正在运行的情况下新条目进入日志文件的时机。每当快照进程写入的记录数量达到
InsertLogSize 属性中指定数量的倍数时,便写入日志条目。日志条目可帮助您确定某个正在运行的快照进程的最新进度。此值设置太低可能会创建大型日志文件。
Campaign|partitions|partition[n]|dataSources|dataSourcename
仅当配置 Campaign 系统表时,才会使用
JndiName 属性(不适用于其他数据源,如客户表)。将其值设置为应用程序服务器(
WebSphere® 或 WebLogic)中定义的
Java™ 命名和目录接口 (JNDI) 数据源。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定用于调用 IBM® Campaign 中的数据库装入实用程序而发出的命令。 如果设置此属性,那么对于与
替换所有记录设置配合使用的“快照”流程中所有输出文件,
IBM® Campaign 会进入数据库装入器实用程序方式。当
IBM® Campaign 将标识列表上载到临时表时,此属性还调用数据库装入器实用程序方式。
IBM® Contact Optimization 与
Campaign 使用相同的配置设置来实现数据库装入实用程序。如果将
IBM® Campaign 配置为与数据库装入实用程序一起工作,那么应该将
IBM® Contact Optimization 配置为使用相同命令。同样,如果将 Contact Optimization 配置为与数据库装入实用程序一起工作,那么应将
IBM® Campaign 配置为与数据库装入实用程序一起工作。每种情况采用
IBM® EMM 安装目录中不同的根目录。根目录为
/Campaign(对于
IBM® Campaign)或者
/ContactOptimization(对于
IBM® Contact Optimization),因此,可在装入程序命令和模板文件中指定不同命令。
|
|
|
|
|
|
|
|
|
此标记将替换为 IBM® Campaign 根据 LoaderControlFileTemplate 属性中指定的模板而生成的临时控制文件的完整路径和文件名。
|
|
此标记将替换为 IBM® Campaign 将数据装入到的数据源的名称。这与此数据源的类别名称中使用的数据源名称相同。
|
|
此标记将替换为在装入过程中由 IBM® Campaign 创建的临时数据文件的完整路径和文件名。此文件位于 IBM® Campaign 临时目录 UNICA_ACTMPDIR 中。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
此标记将替换为 IBM® Campaign 将数据装入到的数据库表名称。这是您的“快照”流程中的目标表或者 IBM® Campaign 正在创建的临时表的名称。
|
|
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定为调用数据库装入实用程序(以在 IBM® Campaign 中的数据库表中追加记录)而发出的命令。 如果设置此属性,那么对于与
追加记录设置配合使用的“快照”流程中所有输出文件,
IBM® Campaign 会进入数据库装入器实用程序方式。
|
|
|
|
|
|
|
|
|
此标记将替换为 Campaign 根据 LoaderControlFileTemplate 属性中指定的模板而生成的临时控制文件的完整路径和文件名。
|
|
此标记将替换为 IBM® Campaign 将数据装入到的数据源的名称。这与此数据源的类别名称中使用的数据源名称相同。
|
|
此标记将替换为在装入过程中由 IBM® Campaign 创建的临时数据文件的完整路径和文件名。此文件位于 Campaign 临时目录 UNICA_ACTMPDIR 中。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
此标记将替换为 IBM® Campaign 将数据装入到的数据库表名称。这是您的“快照”流程中的目标表或者 IBM® Campaign 正在创建的临时表的名称。
|
|
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定针对 IBM® Campaign 配置的控制文件模板的完整路径和文件名。 该模板的路径是相对于当前分区的路径。 例如:
loadscript.db2
设置了此属性时,IBM® Campaign 将根据指定的模板来动态构建临时控制文件。此临时控制文件的路径和名称可用于
<CONTROLFILE> 标记(此标记可用于
LoaderCommand 属性)。
在数据库装入器实用程序方式中使用 IBM® Campaign 之前,必须先配置此参数所指定的控制文件模板。控制文件模板支持以下标记,当
IBM® Campaign 创建临时控制文件时,将动态替换这些标记。
可用于 LoaderControlFileTemplate 的标记与针对
LoaderCommand 属性描述的标记相同,另外还有以下特殊标记,这些特殊标记对出站表中的每个字段重复一次。
|
|
|
|
|
|
|
|
|
|
|
用字面值 CHAR( 替换此标记). 此字段的长度将在括号 () 中指定。 如果您的数据库不理解字段类型 CHAR,那么您可以手动为字段类型指定相应文本,并使用 <FIELDLENGTH> 标记。例如,对于 SQLSVR 和 SQL2000,您将使用 SQLCHAR(<FIELDLENGTH>)。
|
|
|
|
|
|
|
|
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定在 IBM® Campaign 中配置的控制文件模板的完整路径和文件名。 该模板的路径是相对于当前分区的路径。 例如:
loadappend.db2
设置了此属性时,IBM® Campaign 将根据指定的模板来动态构建临时控制文件。此临时控制文件的路径和名称可用于
<CONTROLFILE> 标记(该标记可用于
LoaderCommandForAppend 属性)。
在数据库装入器实用程序方式中使用 IBM® Campaign 之前,必须先配置此属性所指定的控制文件模板。有关控制文件所需的正确语法,请参阅数据库装入器实用程序文档。
可用的标记与 LoaderControlFileTemplate 属性的标记相同。
Campaign|partitions|partition[n]|dataSources|dataSourcename
如果未定义值,那么 IBM® Campaign 将作为固定宽度平面文件来创建临时数据文件。
Campaign|partitions|partition[n]|dataSources|dataSourcename
一些外部装入实用程序需要数据文件是定界的,每行以定界符结尾。为了适应这种需求,请将 LoaderDelimiterAtEnd 值设置为
TRUE,以便在调用装入器来填充已知为空的表时,
IBM® Campaign 在每一行的末尾使用定界符。例如,DB2 on Unix 仅期望使用换行字符来终止每一个记录;
Campaign Campaign on Windows 则使用回车符和换行字符。在每一个记录的末尾放置一个定界符可确保将正确装入数据文件中的最后一列。
Campaign|partitions|partition[n]|dataSources|dataSourcename
一些外部装入实用程序需要数据文件是定界的,每行以定界符结尾。为了适应这种需求,请将 LoaderDelimiterAtEndForAppend 值设置为
TRUE,以便在调用装入器来填充并非已知为空的表时,
IBM® Campaign 在每一行的末尾使用定界符。例如,DB2 on Unix 仅期望使用换行字符来终止每一个记录;
IBM® Campaign on Windows 则使用回车符和换行字符。在每一个记录的末尾放置一个定界符可确保将正确装入数据文件中的最后一列。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定临时 IBM® Campaign 数据文件是固定宽度文件还是定界平面文件,如果已将其定界,那么还将指定用作定界符的字符或字符集。
如果未定义值,那么 IBM® Campaign 将作为固定宽度平面文件来创建临时数据文件。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定,当 IBM® Campaign 将数字值写入到要由数据库装入实用程序装入的文件时,特定于语言环境的符号是否用于小数点。
将此值设置为 TRUE 可指定使用适合语言环境的小数点符号。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使您能够指定允许 IBM® Campaign 在 SQL 中的单个列表中包含的项(例如,WHERE 子句中 IN 运算符后面的值列表)的最大数量。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定允许对单个 IBM® Campaign 流程图中每个数据库源运行的并发查询的数量上限。通常,较高的值可提高性能。
IBM® Campaign 使用独立线程运行数据库查询。由于
IBM® Campaign 进程并行运行,因此通常针对单个数据源同时运行多个查询。如果要并行运行的查询数量超过 MaxQueryThreads,那么
IBM® Campaign 服务器会将同时查询数限制为指定的值。
|
将 maxReuseThreads 设置为非零值时,它应该大于或等于 MaxQueryThreads 的值。
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
当所选标识数量小于由 MaxRowFetchRecords 属性指定的值时,
IBM® Campaign 会在单独的 SQL 查询中将标识传递到数据库(一次传递一个)。此过程可能要花费很长时间。如果所选标识数量大于由此属性指定的值,那么
IBM® Campaign 将使用临时表(如果数据库源上允许),或者从表中下拉所有值(不包括任何不必要的值)。
Campaign|partitions|partition[n]|dataSources|dataSourcename
发出查询时,IBM® Campaign 将在包含确切标识列表(由于查询而生成)的数据库上创建临时表。对数据库发出一个选择所有记录的附加查询时,
MaxTempTableJoinPctSelectAll 属性指定是否对临时表执行连接。
仅当 AllowTempTables 属性的值设置为
TRUE 时,此属性才适用。如果
useInDbOptimization 属性设置为
YES,那么将忽略此属性。
0 到 100 之间的整数。值为
0 意味着从不使用临时表连接;值为
100 意味着将始终使用表连接,无论临时表的大小如何。
假定 MaxTempTableJoinPctSelectAll 设置为
90。首先,您可能希望从数据库表 (
Customer) 中选择帐户余额 (
Accnt_balance) 大于 $1000 的客户 (
CustID)。
SELECT CustID FROM Customer
WHERE Accnt_balance > 1000
然后,您可能希望对所选标识 (CustID) 以及实际余额 (
Accnt_balance) 获取快照。 由于临时表 (
Temp_table) 的相对大小小于 90% (
MaxTempTableJoinPctSelectAll),因此将首先对临时表执行连接。快照进程生成的 SQL 表达式可能如下所示:
SELECT CustID, Accnt_balance FROM Customer, Temp_table WHERE CustID = TempID
SELECT CustID, Accnt_balance FROM Customer
Campaign|partitions|partition[n]|dataSources|dataSourcename
发出查询时,IBM® Campaign 将在包含确切标识列表(由于查询而生成)的数据库上创建临时表。如果对数据库发出一个附加查询,此查询通过限制条件来选择记录,那么
MaxTempTableJoinPctWithCondition 属性指定是否应对临时表执行连接。
如果临时表的相对大小(指定为百分比)大于 MaxTempTableJoinPctWithCondition 的值,那么不执行连接。这避免了数据库中原本不需要的开销。在此情况下,将针对数据库发出查询,检索产生的标识列表,然后在将此列表与服务器存储器中的列表进行匹配时废弃不需要的记录。
仅当 AllowTempTables 属性的值设置为
TRUE 时,此属性才适用。
0 到 100 之间的整数。值为
0 意味着从不使用临时表连接;值为
100 意味着将始终使用表连接,无论临时表的大小如何。
Campaign|partitions|partition[n]|dataSources|dataSourcename
如果未配置此属性,那么 IBM® Campaign 会假设该值为缺省值(零)。如果配置了此属性,但将值设置为负值或非整数值,那么将假设该值为 0。
Campaign|partitions|partition[n]|dataSources|dataSourcename
如果未配置此属性,那么 IBM® Campaign 会假设该值为缺省值(零)。如果配置了此属性,但将值设置为负值或非整数值,那么将假设该值为 0。
Campaign|partitions|partition[n]|dataSources|dataSourcename
NumberOfRetries 属性指定
IBM® Campaign 在失败时自动重试数据库操作的次数。在
IBM® Campaign 报告数据库错误或失败之前,将按照这一次数来自动向数据库重新提交查询。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
ODBCUnicode 属性指定
IBM® Campaign ODBC 调用中使用的编码类型。此属性仅用于 ODBC 数据源,在用于 Oracle 或
DB2® 本机连接时,将忽略此属性。
|
如果此属性设置为 UTF-8 或 UCS-2,那么数据源的 StringEncoding 值必须设置为 UTF-8 或 WIDEUTF-8,否则将忽略 ODBCUnicode 属性的设置。
|
|
UTF-8: IBM® Campaign 使用 Unicode ODBC 调用并假设 SQLWCHAR 为单字节。这与 DataDirect ODBC 驱动程序兼容。
|
|
UCS-2: IBM® Campaign 使用 Unicode ODBC 调用并假设 SQLWCHAR 为双字节。这与 Windows™ 和 unixODBC ODBC 驱动程序兼容。
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 ODBCv2 属性指定
IBM® Campaign 应将哪种 ODBC API 规范用于数据源。
缺省值 FALSE 允许
IBM® Campaign 使用 v3 API 规范,而设置
TRUE 则将导致
IBM® Campaign 使用 v2 API 规范。对于不支持 ODBC v3 API 规范的数据源,请将
ODBCv2 属性设置为
TRUE。
ODBCv2 属性设置为
TRUE 时,
IBM® Campaign 不支持 ODBC Unicode API,对于
ODBCUnicode 属性,
disabled 以外的值均不会被识别。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用此属性,将 IBM® Campaign 中表映射显示限制为指定模式中的表。例如,要指定模式“dbo”中的表,请设置 OwnerForTableDisplay=dbo。
Campaign|partitions|partition[n]|dataSources|dataSourcename
设置为 TRUE 时,
PadTextWithSpaces 属性将导致
IBM® Campaign 使用空格来填充文本值,直到字符串与数据库字段具有相同宽度为止。
Campaign|partitions|partition[n]|dataSources|dataSourcename
以下描述了可用于 PostExtractTableCreateRunScript 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
以下描述了可用于 PostSegmentTableCreateRunScript 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 PostSnapshotTableCreateRunScript 属性指定在创建并填充快照表之后
Campaign 运行的脚本或可执行文件。
以下描述了可用于 PostSnapshotTableCreateRunScript 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 PostTempTableCreateRunScript 属性指定在用户表源或系统表数据库中创建并填充临时表之后
Campaign 运行的脚本或可执行文件。
以下描述了可用于 PostTempTableCreateRunScript 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
以下描述了可用于 PostUserTableCreateRunScript 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 PrefixOnSelectSQL 属性指定在
Campaign 生成的所有
SELECT SQL 表达式前面自动添加的字符串。
此属性仅适用于 Campaign 生成的 SQL,并不适用于“选择”流程中使用的原始 SQL 表达式中的 SQL。
此属性将自动添加到 SELECT SQL 表达式,而不检查其语法。如果使用此属性,请确保其是合法表达式。
Campaign|partitions|partition[n]|dataSources|dataSourcename
QueryThreadSleep 属性影响
Campaign 服务器进程 (
UNICA_ACSVR) 的 CPU 利用率。值为
TRUE 时,
Campaign 服务器进程用于检查查询是否完成的线程将在检查的间歇休眠。 值为
FALSE 时,
Campaign 服务器进程将连续检查查询是否完成。
Campaign|partitions|partition[n]|dataSources|dataSourcename
ReaderLogSize 参数定义在从数据库读取数据时
Campaign 在日志文件中生成新条目的时机。每当读取自数据库的记录数量达到此参数中定义的数字的倍数时,将在日志文件中写入一个日志条目。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
StringEncoding 属性指定数据库的字符编码。当
Campaign 从数据库检索数据,数据将从指定编码转换为
Campaign 的内部编码 (
UTF-8)。
Campaign 向数据库发送查询时,会将字符数据的编码从
Campaign 的内部编码 (
UTF-8) 转换为
StringEncoding 属性中指定的编码。
如果数据库客户机编码为 UTF-8,那么此值的首选设置为
WIDEUTF-8。仅当数据库客户机已设置为
UTF-8时,
WIDE-UTF-8 设置才会起作用。
如果您使用 partitions > partition[n] > dataSources > data_source_name > ODBCUnicode 属性,那么将
StringEncoding 属性设置为
UTF-8 或
WIDEUTF-8。否则,将忽略
ODBCUnicode 属性值。
本部分描述如何为 DB2®、SQL Server 或 Teradata 数据库设置正确的值。
标识 DB2® 数据库代码页和代码集。对于本地化环境,
DB2® 数据库必须具有以下配置:
在 Campaign 中将
StringEncoding 属性值设置为
DB2® 数据库代码集值。
将 DB2CODEPAGE DB2® 环境变量设置为
DB2® 数据库代码页值:
|
在 Windows™ 上:将以下行添加到 Campaign 侦听器启动脚本 ( <CAMPAIGN_HOME>\bin\cmpServer.bat):
|
|
在 UNIX™ 上:在启动 DB2® 之后,系统管理员必须从 DB2® 实例用户输入以下命令:
|
StringEncoding=CP932
CharacterSet=UTF8
Campaign 通常负责在其内部编码
UTF-8 与数据库的编码之间进行代码转换。当数据库以
UTF-8 编码时,可以为
StringEncoding 指定值
UTF-8(SQL Server 除外),并且不需要代码转换。传统上,这些是
Campaign 访问数据库中的非英语数据的唯一可行模型。
在 Campaign V7.0 中,引入了一种称为
WIDEUTF-8 的新数据库编码,可作为
StringEncoding 属性的值。通过使用此编码,
Campaign 仍使用
UTF-8 来与数据库客户机进行通信,但是允许客户机在
UTF-8 与实际数据库的编码之间执行代码转换任务。需要此增强版本的
UTF-8 来改变表列映射的宽度,以便将它们具有足够宽度来适应转换代码后的文本。
Campaign|partitions|partition[n]|dataSources|dataSourcename
SuffixOnAllOtherSQL 属性指定要自动追加到
Campaign 生成的每个 SQL 表达式并且
SuffixOnInsert、SQLSuffixOnSelectSQL、SuffixOnTempTableCreation、 SuffixOnUserTableCreation 或
SuffixOnUserBaseTableCreation 属性未包含的字符串。
此属性仅适用于 Campaign 生成的 SQL,并不适用于“选择”流程中使用的原始 SQL 表达式中的 SQL。
TRUNCATE TABLE table
DROP TABLE table
DELETE FROM table [WHERE ...]
UPDATE table SET ...
Campaign|partitions|partition[n]|dataSources|dataSourcename
SuffixOnCreateDateField = FORMAT 'YYYY-MM-DD'
|
请参阅对 DateFormat 属性的描述中的表。
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
SuffixOnInsertSQL 属性指定将自动追加到
Campaign 生成的所有
INSERT SQL 表达式的字符串。 此属性仅适用于
Campaign 生成的 SQL,并不适用于“选择”流程中使用的原始 SQL 表达式中的 SQL。
INSERT INTO table ...
Campaign|partitions|partition[n]|dataSources|dataSourcename
SuffixOnSelectSQL 属性指定将自动追加到
Campaign 生成的所有
SELECT SQL 表达式的字符串。 此属性仅适用于
Campaign 生成的 SQL,并不适用于选择进程中使用的“原始 SQL”表达式中的 SQL。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SuffixOnTempTableCreation 属性来指定在创建临时表时将自动追加到
Campaign 生成的 SQL 表达式的字符串。此属性仅适用于
Campaign 生成的 SQL,并不适用于选择进程中使用的“原始 SQL”表达式中的 SQL。要使用此属性,
AllowTempTables 属性必须设置为
TRUE。
Campaign|partitions|partition[n]|dataSources|dataSourcename
以下描述了可用于 SuffixOnSegmentTableCreation 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SuffixOnSnapshotTableCreation 属性来指定在创建快照表时将自动追加到
Campaign 生成的 SQL 表达式的字符串。
以下描述了可用于 SuffixOnSnapshotTableCreation 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SuffixOnExtractTableCreation 属性来指定在创建抽取表时将自动追加到
Campaign 生成的 SQL 表达式的字符串。
以下描述了可用于 SuffixOnExtractTableCreation 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SuffixOnUserBaseTableCreation 属性指定在用户创建基本表时(例如,在抽取进程中),将自动追加到
Campaign 生成的 SQL 表达式的字符串。 此属性仅适用于
Campaign 生成的 SQL,并不适用于选择进程中使用的“原始 SQL”表达式中的 SQL。
以下描述了可用于 SuffixOnUserBaseTableCreation 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SuffixOnUserTableCreation 属性指定在用户创建常规表时(例如,在快照进程中),将自动追加到
Campaign 生成的 SQL 表达式的字符串。 此属性仅适用于
Campaign 生成的 SQL,并不适用于选择进程中使用的“原始 SQL”表达式中的 SQL。
Campaign|partitions|partition[n]|dataSources|dataSourcename
除非 UA_SYSTEM_TABLES 数据源包含多个模式(例如,在多个组所使用的 Oracle 数据库上),否则请将此值留为空白。(在此上下文中,“模式”指示
X.Y 格式的“限定”表名称的初始部分(例如,
dbo.UA_Folder)。在这一格式中,
X 是模式,
Y 是未限定表名称。 此语法的术语在
Campaign 支持的不同数据库系统之间各有不同。)
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 TableListSQL 属性来指定要使用的 SQL 查询以在可映射的表的列表中包含同义词。
select B.name AS oName, A.name AS tName
from sys.synonyms A LEFT OUTER JOIN sys.schemas B
on A.schema_id = B.schema_id ORDER BY 1, 2
*select B.name AS oName, A.name AS tName from
(select name, schema_id from sys.synonyms UNION
select name, schema_id from sys.tables UNION select name,
schema_id from sys.views) A LEFT OUTER JOIN sys.schemas B on
A.schema_id = B.schema_id ORDER BY 1, 2
*select OWNER, TABLE_NAME from (select OWNER, TABLE_NAME
from ALL_TABLES UNION select OWNER, SYNONYM_NAME AS TABLE_NAME
FROM ALL_SYNONYMS UNION select OWNER,
VIEW_NAME AS TABLE_NAME from ALL_VIEWS) A ORDER BY 1, 2
Campaign|partitions|partition[n]|dataSources|dataSourcename
SQLOnConnect 属性定义在每个数据库连接之后
Campaign 立即运行的完整 SQL 语句。
UOSQLOnConnect 属性与此类似,但是仅适用于
Contact Optimization。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性的缺省值为 FALSE,这指示 Campaign 应使用其标准方法(例如,ODBC 或本机连接)来检索模式。此属性设置为 TRUE 会导致
Campaign 来准备一个类似于
select * from <table> 的 SQL 查询以检索表模式。
这可提供特定于每个数据源的优势。例如,某些数据源(Netezza® 或 SQL Server)不能通过缺省 ODBC 或本机连接来正确地报告 SQL 同义词(数据库对象的备用名称,使用
create synonym 语法来定义)。通过将此属性设置为 TRUE,将针对
Campaign 中的数据映射来检索 SQL 同义词。
|
对于 Netezza®,必须将此属性设置为 TRUE 以便能够支持同义词。将此属性设置为 TRUE 可命令 Campaign 准备一个 SQL 查询以检索表模式。要在 Netezza® 数据源中支持同义词,不需要其他设置或值。
|
要使 Campaign 能够处理
Netezza® 或 SQL Server 同义词:
UseSQLToRetrieveSchema=TRUE
Campaign|partitions|partition[n]|dataSources|dataSourcename
流程框配置为写入新映射表 >
基本记录表 >
在所选数据库中创建新表时,会调用此属性。仅当创建表(创建和映射过程期间)时,会调用此属性。流程框运行时期间不会调用此属性。
Campaign|partitions|partition[n]|dataSources|dataSourcename
|
新映射表 > 常规表 > 在所选数据源中创建新表:创建/映射过程期间会调用此属性;而快照运行时期间不会调用此属性。
|
|
新映射表 > 维度表 > 在所选数据库中创建新表:创建/映射过程期间会调用此属性;而快照运行时期间不会调用此属性。
|
Campaign|partitions|partition[n]|dataSources|dataSourcename
将 UseTempTablePool 设置为
FALSE 时,将删除临时表,并在流程图每次运行时重新创建。将该属性设置为
TRUE 时,不会从数据库中删除临时表。将从
Campaign 维护的表池中截断临时表并加以复用。 临时表池在您多次重新运行流程图的环境中最有效,例如在设计和测试阶段过程中。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SegmentTablePostExecutionSQL 属性指定在创建并填充细分市场临时表之后
Campaign 运行的完整 SQL 语句。
以下描述了可用于 SegmentTablePostExecutionSQL 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
使用 SnapshotTablePostExecutionSQL 属性指定在创建并填充快照表之后要立即运行的一个或多个完整 SQL 语句。仅当“快照”流程框写出到抽取表时,才会调用此属性。
以下描述了可用于 SnapshotTablePostExecutionSQL 的标记。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性指定自动作为前缀追加到 Campaign 创建的所有临时表名称的字符串。使用此属性有助于识别和管理临时表。您还可以使用此属性以在特定位置中创建临时表。
TempTablePrefix="<USER>"
Campaign|partitions|partition[n]|dataSources|dataSourcename
例如,通过 TempTablePostExecutionSQL 属性,您可以指定以下 SQL 语句以创建索引:
然后,在 TempTablePreTruncateExecutionSQL 属性中指定以下查询以删除索引:
Campaign|partitions|partition[n]|dataSources|dataSourcename
例如,通过 PostTempTableCreateRunScript 属性,您可以指定一个包含以下 SQL 语句的脚本以创建索引:
然后,在 TempTablePreTruncateRunScript 属性中指定另一个包含以下语句的脚本以删除该索引:
Campaign|partitions|partition[n]|dataSources|dataSourcename
将该值设置为 TRUE 可在删除某个表之前从该表中删除所有记录。
|
如果 IBM® Campaign 由于任何原因而无法删除记录,那么它将不会删除该表。
|
将该值设置为 FALSE 可在不首先删除所有记录的情况下删除表。
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性可用于 DB2® 数据源,并且允许您指定用于表截断的备用 SQL。仅当
DeleteAsTruncate 为 TRUE 时,此属性才适用。当
DeleteAsTruncate 为 TRUE 时,此属性中的任何定制 SQL 都将用于截断表。 如果未设置此属性,那么
IBM® Campaign 将使用 TRUNCATE TABLE <TABLENAME> 语法。
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
当 IBM® Campaign 在“合并”流程或“细分市场”流程中执行排除时,缺省情况下将使用
NOT EXISTS 语法,如:
SELECT IncludeTable.ID FROM IncludeTable WHERE NOT EXISTS
(SELECT * FROM ExcludeTable WHERE IncludeTable.ID = ExcludeTable.ID)
如果 UseExceptForMerge 为 TRUE 并且您无法使用
NOT IN(因为
UseNotInForMerge 已禁用,或者因为受众级别包含多个字段并且数据源不是 Oracle),那么语法更改为如下所示:
SELECT IncludeTable.ID FROM IncludeTable
MINUS (SELECT ExcludeTable.ID FROM ExcludeTable)
SELECT IncludeTable.ID FROM IncludeTable
EXCEPT (SELECT ExcludeTable.ID FROM ExcludeTable)
Campaign|partitions|partition[n]|dataSources|dataSourcename
Campaign|partitions|partition[n]|dataSources|dataSourcename
UseNonANSIJoin 属性指定此数据源是否使用非 ANSI 连接语法。如果数据源类型设置为 Oracle7 或 Oracle8,并且
UseNonANSIJoin 的值设置为
TRUE,那么数据源使用适合于 Oracle 的非 ANSI 连接语法。
Campaign|partitions|partition[n]|dataSources|dataSourcename
当 IBM® Campaign 在“合并”流程或“细分市场”流程中执行排除时,缺省情况下将使用
NOT EXISTS 语法,如:
SELECT IncludeTable.ID FROM IncludeTable WHERE NOT EXISTS (SELECT *
FROM ExcludeTable WHERE IncludeTable.ID = ExcludeTable.ID)
如果启用了 UseNotInForMerge 并且 (1) 受众级别由单一标识字段组成,或者 (2) 数据源为 Oracle,那么语法更改为如下所示:
SELECT IncludeTable.ID FROM IncludeTable WHERE IncludeTable.ID NOT IN
(SELECT ExcludeTable.ID FROM ExcludeTable)
Campaign|partitions|partition[n]|dataSources|dataSourcename
此属性允许您配置 IBM® Campaign 以将 SQL 查询
GROUP BY 提交给数据库,从而计算概要文件(使用“
SELECT field, count(*) FROM table GROUP BY field”),而不是访存记录。
|
值 FALSE(缺省值)将导致 IBM® Campaign 对字段进行概要分析(通过检索表中所有记录的字段值)以及跟踪每个非重复值的计数。
|
|
值 TRUE 将导致 IBM® Campaign 通过发出与以下类似的查询来对字段进行概要分析:
|
SELECT field, COUNT(*) FROM table GROUP BY field
Copyright IBM Corporation 2015. All Rights Reserved.
|