在 ssis 中使用执行 sql 任务创建 table 解析失败

create table using execute sql task in ssis failed to parse

我正在尝试根据变量在 excel sheet 中创建一个 table。当我在控制流中执行 SQL 任务时,它给我一个错误

"[Execute SQL Task] Error: Executing the query "Create Table'XXX'
('SEQ_ID' lo..." failed with the following error: "Syntax error in CREATE TABLE statement.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly".

我使用的变量是

    "Create Table'"+(DT_STR,20,1252) @[User::SALES]+ "'           ('SEQ_ID' long
      ,'LEGACY_CUSTOMER_ID' longtext
      ,'NAME' longtext

      ,'LEGACY_DB' longtext
       ,'ADDRESS_STREET' longtext
       ,'ADDRESS_CITY' longtext
       ,'ADDRESS_STATE' longtext
       ,'ADDRESS_COUNTY' longtext
       ,'ADDRESS_ZIP_CODE' longtext

      ,'SALES_PERSON' longtext
  )"

下面是执行sql任务的图片

尝试

  • 使用 ` 而不是 '
  • 使用 NVARCHAR(255) 而不是 longtext
  • 检查单词之间的空格

您的变量应如下所示

"Create Table `" + (DT_STR,20,1252) @[User::SALES] + "`           
(`SEQ_ID` INTEGER
  ,`LEGACY_CUSTOMER_ID` NVARCHAR(255)
  ,`NAME` NVARCHAR(255)
  ,`LEGACY_DB` NVARCHAR(255)
   ,`ADDRESS_STREET` NVARCHAR(255)
   ,`ADDRESS_CITY` NVARCHAR(255)
   ,`ADDRESS_STATE` NVARCHAR(255)
   ,`ADDRESS_COUNTY` NVARCHAR(255)
   ,`ADDRESS_ZIP_CODE` NVARCHAR(255)
   ,`SALES_PERSON` NVARCHAR(255)
 )"

您可以阅读本文提供的示例link