Sql SSIS:列';列名称';在数据源中找不到
我正在做一个SSIS项目。我正在尝试对文件运行查询。在我的包中,我有一个运行此查询的OLEDB源Sql SSIS:列';列名称';在数据源中找不到,sql,sql-server,ssis,Sql,Sql Server,Ssis,我正在做一个SSIS项目。我正在尝试对文件运行查询。在我的包中,我有一个运行此查询的OLEDB源 USE [DB] SET FMTONLY OFF; DECLARE @table_data TABLE ( column_01 VARCHAR(255), column_02 VARCHAR(10), colum
USE [DB]
SET FMTONLY OFF;
DECLARE @table_data TABLE
(
column_01 VARCHAR(255),
column_02 VARCHAR(10),
column_04 VARCHAR(255)
)
SELECT
'column_01',
'column_02',
'column_03'
UNION ALL
column_01,
column_02,
column_03
FROM
@table_data
尝试运行脚本时,出现以下错误:
SSIS:在数据源中找不到列“Column_01”
我尝试将ValidateExternalMetaData
设置为on,但出现错误(验证失败,返回验证状态“VS_NEEDSNEWMETADATA”
)
OLE DB源正在将数据转储到动态文本文件中
我不知道如何解决这个问题,也不知道SSIS为什么不允许我使用它。您的代码不会生成错误;看 不过,我怀疑您希望结果中有带名称的列。但它们只是匿名字符串。你想要什么还不清楚。也许:
SELECT 'column_01' as column_01, 'column_02' as column_02,
'column_03' as column_03
FROM @table_data;
或者,您可能希望表中的值而不是常量字符串值:
SELECT column_01, column_02,column_03
FROM @table_data;
我尽力了。它工作正常,没有任何错误
USE [DB]
SET FMTONLY OFF;
DECLARE @table_data TABLE
(
column_01 VARCHAR(255),
column_02 VARCHAR(10),
column_04 VARCHAR(255)
)
INSERT INTO @table_data
SELECT 'column_01','column_02','column_03'
SELECT * FROM @table_data
联合后,必须使用
选择
像这样:
USE [DB]
SET FMTONLY OFF;
DECLARE @table_data TABLE
(
column_01 VARCHAR(255),
column_02 VARCHAR(10),
column_04 VARCHAR(255)
)
SELECT
'column_01',
'column_02',
'column_03'
UNION ALL
select
column_01,
column_02,
column_03
FROM
@table_data
我更新了我的sql代码。我犯了一个错误。。。我尝试将别名添加到所有列中,但在数据源中仍然找不到它