文档首页 > > 工具指南> Migration Tool SQL语法迁移工具> 配置Migration Tool> Teradata Perl配置

Teradata Perl配置

分享
更新时间: 2019/08/09 GMT+08:00

设置Perl迁移配置参数可在迁移Teradata Perl文件时自定义迁移工具的行为。

打开config文件夹中的perl-migration.properties文件,并根据实际需要设置表1中的变量,实现迁移语法需求。

说明:
  • 参数值不区分大小写。
  • 用户不得更改除下表给出的参数值之外的任何参数值。
表1 perl-migration.properties文件中的配置参数

参数

说明

取值范围

默认值

示例

  • add-timing-on

指定是否添加脚本来计算执行时间。

如果启用,则为每个输入文件添加add timing脚本。

  • true
  • false

false

add-timing-on=true

  • db-script-tag-name

指定要在Perl文件中处理的脚本。

BTEQ:仅处理BTEQ标记的脚本。

SQL_LANG:仅处理SQL_LANG标记的脚本。

BTEQ,SQL_LANG:上述二者都会处理。

  • bteq
  • sql_lang
  • bteq,sql_lang

bteq,sql_lang

db-script-tag-name=sql_lang

  • log-file-count

指定保留日志文件的最大数量。文件总数包括正在使用的日志文件和已归档的日志文件。

如果新归档的日志文件超过了文件数上限,则会先删除最早保留的文件,直到成功保存指定数量的文件。

3 - 10

5

log-file-count=10

  • log-file-size

指定日志文件的最高上限。

日志文件大小达到指定上限时,给文件名添加时间戳并进行归档。

示例:

perlmigrationtool_2018-07-08_16_12_08.log

归档后,生成新的日志文件perlmigrationtool.log。

1MB - 10MB

5MB

log-file-size=10MB

  • logging-level

指定Perl迁移日志的级别。

设为error,表示仅记录错误日志。

设为warning,表示将记录错误及预警日志。

设为info,表示将记录error、预警和活动日志。该级别包含所有日志信息。

  • error
  • warning
  • info

info

logging-level=info

  • migrate-variables

指定是否迁移分配给Perl变量的SQL命令。

Perl文件可以包含带有SQL命令的Perl变量,通过PREPARE和EXECUTE语句在Perl中执行。该工具还可以提取SQL命令进行迁移。

设为true,表示对分配给Perl变量的SQL命令进行迁移。

设为false,表示在迁移时跳过Perl变量。

示例1:

当参数设为true时, 将

$V_SQL = "CT X1(C1 INT,C2 CHAR(30))";

中$V_SQL的SQL迁移为如下内容:

CREATE TABLE X1(C1 INT,C2 CHAR(30));

示例2:

输入

$onesql ="SELECT trim(tablename) from dbc.tables       
           WHERE databasename = '${AUTO_DQDB}' and tablename like 'V_%' 
           order by 1;";
  $sth_rundq = $dbh->execute_query($onesql);

输出

  $onesql ="SELECT
          TRIM( tablename )
     FROM
          dbc.tables
     WHERE
          databasename = '${AUTO_DQDB}'
          AND tablename LIKE 'V_%'
     ORDER BY
          1
;

";
  $sth_rundq = $dbh->execute_query($onesql);
  • true
  • false

true

migrate-variables=true

  • remove-intermediate-files

指定在迁移完成后是否删除Perl迁移工具创建的中间SQL文件。

该文件包含SQL文件中的BTEQ和SQL_LANG语法,作为语法迁移工具的输入文件。

设为true,表示删除中间文件。

设为false,表示不删除中间文件。

  • true
  • false

true

remove-intermediate-files=true

  • migrate-executequery

指定是否必须迁移包含SQL内容的execute_query。

设为true,表示必须迁移。

设为false,表示不迁移。

示例:

设为true时,将

my $rows1=$conn1->execute_query("sel ${selectclause} from ${databasename}.${tablename};
         ");

迁移为:

my $rows1=$conn1->execute_query("SELECT
          ${selectclause}
     FROM
          ${databasename}.${tablename}
;");
  • true
  • false

true

migrate-executequery =true

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区