SSIS中的OLEDB源视图不令人耳目一新

时间:2012-07-31 15:10:15

标签: sql sql-server tsql ssis

我在数据库DbConfig中创建了一个视图。视图定义是

use DbConfig
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[v_ETL_priority]
AS
SELECT
'EF5F126FU1'    code
,'N'                activeind
,'Unknown'      decode
,   0               prioritydays
UNION ALL
SELECT  distinct
cast(LTRIM(RTRIM([priority_code])) as varchar(10))
,case when [inactive] =0 then 'Y' else 'N' end
,cast(LTRIM(RTRIM([description])) as varchar(30))
,[days]
FROM OPEN_DB.[dbo].[rm_priority]

现在该视图用作其中一个数据流的OLEDB源。它工作正常。

有一些名为OPEN_DB_UK,OPEN_DB_KD,OPEN_DB_Usa的数据库,都具有与OPEN_DB相同的结构,并且包含相同的表rm_priority 现在,如果我将OPEN_DB重命名为OPEN_DB_old并将OPEN_DB_UK重命名为OPEN_DB,那么视图必须从新数据库(英国数据库)中提供数据行吗? 是的,它确实在查询视图时从SSMS中的[V_VAT]中选择*。但是在SSIS OLEDB源中,它仍然根据第一个数据库OPEN_DB给出数据行。 为什么它没有根据SSIS OLEDB源中的OPEN_DB_uk新数据库提供数据行

是否有任何机构遇到类似的问题?是否由于视图定义中的不同而导致?

任何SSIS专家请帮助

1 个答案:

答案 0 :(得分:0)

一段时间以来,我遇到了类似的问题,通过重新创建连接来解决问题。删除现有连接并创建新连接并配置相同。请试试这个approch并告诉我你的意见。