首页 > 解决方案 > Pentaho执行SQL语句

问题描述

我使用 Pentaho 作为 ETL 从 MSSQL 数据库迁移到 PostgreSQL 数据库。

错误(版本 8.3.0.0-371,buildguy 从 2019-06-11 11.09.08 开始构建 8.3.0.0-371):执行此作业条目时发生错误:

  • 创建表 ["tablename"] - 无法执行 SQL: CREATE TABLE "tablename"
   CREATE TABLE sysdiagrams
    (
    ,`name` VARCHAR(128)
    , principal_id int
    , diagram_id int
    , version int
    )

先感谢您

标签: databasesql-server-2008data-migrationpentaho-spoonpentaho-data-integration

解决方案


尝试CREATE TABLE使用“SQL”作业条目运行语句时,日志显示以下内容:

2019/12/20 09:54:36 - SQL - ERROR (version 8.3.0.3-520, build 8.3.0.3-520 from 2019-09-20 07.35.24 by buildguy) : An error occurred executing this job entry : 
2019/12/20 09:54:36 - SQL - Couldn't execute SQL: CREATE TABLE sysdiagrams
        (
        ,`name` VARCHAR(128)
        , principal_id int
        , diagram_id int
        , version int
        )
2019/12/20 09:54:36 - SQL - 
2019/12/20 09:54:36 - SQL - ERREUR: erreur de syntaxe sur ou près de « , »
  Position : 44

删除列列表中的第一个逗号,并删除name标识符周围的反引号 ('`') 解决了该问题:

CREATE TABLE sysdiagrams
        (
        name VARCHAR(128)
        , principal_id int
        , diagram_id int
        , version int
        )

推荐阅读