2012-02-20 4 views
0

SQL ServerにSSIS構成を保存するオプションがあります。いいアイデアのようだ。そうすれば、私のSSISパッケージは実行するためにファイルアクセスを必要としません。SQL Serverに格納されているSSIS Configを編集するツールはありますか?

しかし、それが格納されている形式はユーザーフレンドリーではありません。これらの設定をフレンドリーな方法で表示および編集できるツールはありますか?閲覧するための

+0

ここにどのようにアクセスしていますか? Management Studioまたはクエリを使用してジェイソンはSSISシリーズの31日間でこれについてアドバイスをしていますか? http://www.jasonstrate.com/2011/01/31-days-of-ssis-sql-server-configuration-1831/ –

+0

SSISパッケージとAC#Windowsフォームのセットを作って、セットを移動させました1つのサーバーから別のサーバーへの特定のフィルターの行数。私はそれを共有しないので、ちょうどあなたのためのアイデア。 – Sam

答えて

0

、我々は常にちょうどSELECT *

を使用していた私は、私たちのコンフィギュレーションテーブルのために特定のフィルタをエクスポートPROCを作成しました(私たちはそれがsysdtsconfig呼びます)、あなたは我々とそれを拡張しましたも見ることができます自身のメタ情報。それがあなたに合っていない場合は

CREATE PROCEDURE 
    [dbo].[ConfigurationExport] 
(
    @TargetFilter VARCHAR (60) 
) 
AS 
BEGIN 
    SET NOCOUNT ON 
    DECLARE 
     @DynamicStatement varchar(max) 
    , @ConfigurationFilter nvarchar(150) 
    , @ConfiguredValue nvarchar(255) 
    , @PackagePath nvarchar(255) 
    , @ConfiguredValueType nvarchar(20) 
    , @Application nvarchar(50) 
    , @Category nvarchar(50) 
    , @Subcategory nvarchar(50) 
    , @Comment nvarchar(255) 

    -- set using statement 
    SELECT 
     @DynamicStatement = '' 

    -- purge existing 
    SELECT 
     @DynamicStatement = @DynamicStatement + replicate('-', 80) + char(13) + char(10) 
     + '-- Remove existing settings' + char(13) + char(10) 
     + replicate('-', 80) + char(13) + char(10) 

    SELECT 
     @DynamicStatement = @DynamicStatement + 'DELETE C' + char(13) + char(10) + 
    'FROM' + char(13) + char(10) 
     + ' dbo.SYSDTSCONFIG C' + char(13) + char(10) + 'WHERE' + char(13) + char(10) 
     + ' C ConfigurationFilter = ''' + @TargetFilter + '''' + char(13) + char(10) 
    + char(13) + char(10) 

    -- add current settings 
    SELECT 
     @DynamicStatement = @DynamicStatement + replicate('-', 80) + char(13) + char(10) 
     + '-- Load values for ' + @TargetFilter + char(13) + char(10) 
     + replicate('-', 80) + char(13) + char(10) + char(13) + char(10) 

    DECLARE Csr cursor for 
    SELECT 
     ConfigurationFilter 
    , ConfiguredValue 
    , PackagePath 
    , ConfiguredValueType 
    , Application 
    , Category 
    , Subcategory 
    , Comment 
    FROM 
     dbo.sysdtsconfig 
    WHERE 
     ConfigurationFilter = @TargetFilter 


    SET NOCOUNT ON 
    OPEN Csr 
    FETCH NEXT FROM Csr INTO 
     @ConfigurationFilter 
    , @ConfiguredValue 
    , @PackagePath 
    , @ConfiguredValueType 
    , @Application 
    , @Category 
    , @Subcategory 
    , @Comment 
    WHILE (@@fetch_status <> -1) 
    BEGIN 
     IF (@@fetch_status <> -2) 
     BEGIN 
     SELECT 
      @DynamicStatement = @DynamicStatement + 'INSERT INTO' + char(13) + char(10) 
      + ' dbo.SYSDTSCONFIG' + char(13) + char(10) 
      + '(' + char(13) + char(10) 
      + ' ConfigurationFilter' + char(13) + char(10) 
      + ', ConfiguredValue' + char(13) + char(10) 
      + ', PackagePath' + char(13) + char(10) 
      + ', ConfiguredValueType' + char(13) + char(10) 
      + ', Application' + char(13) + char(10) 
      + ', Category' + char(13) + char(10) 
      + ', Subcategory' + char(13) + char(10) 
      + ', Comment' + char(13) + char(10) 
      + ')' + char(13) + char(10) 
      + 'SELECT' + char(13) + char(10) 
      + ' ' + IsNull('''' + @ConfigurationFilter + '''', 'NULL') 
      + ' AS ConfigurationFilter' + char(13) + char(10) 
      + ', ' + IsNull('''' + @ConfiguredValue + '''', 'NULL') + ' AS ConfiguredValue' + char(13) + char(10) 
      + ', ' + IsNull('''' + @PackagePath + '''', 'NULL') + ' AS PackagePath' + char(13) + char(10) 
      + ', ' + IsNull('''' + @ConfiguredValueType + '''', 'NULL') + ' AS ConfiguredValueType' + char(13) + char(10) 
      + ', ' + IsNull('''' + @Application + '''', 'NULL') + ' AS Application' + char(13) + char(10) 
      + ', ' + IsNull('''' + @Category + '''', 'NULL') + ' AS Category' + char(13) + char(10) 
      + ', ' + IsNull('''' + @Subcategory + '''', 'NULL') + ' AS Subcategory' + char(13) + char(10) 
      + ', ' + IsNull('''' + @Comment + '''', 'NULL') + ' AS Comment' + char(13) + char(10) + char(13) + char(10) 

     END 
     FETCH NEXT FROM Csr INTO 
      @ConfigurationFilter 
     , @ConfiguredValue 
     , @PackagePath 
     , @ConfiguredValueType 
     , @Application 
     , @Category 
     , @Subcategory 
     , @Comment 
    END 
    CLOSE Csr 
    DEALLOCATE Csr 

    IF (len(@dynamicStatement) > 256) 
    BEGIN 
     SELECT rtrim('-- Warning, text may be truncated!' + char(13) + char(10) 
     + '-- Tools, Options, Query Results, SQL Server, Results to Text -> ' + char(13) + char(10) 
     + '--  Set Maximum number of characters to 8192') 
     UNION ALL 
     SELECT 
      rtrim(@DynamicStatement) 
    END 
    ELSE 
    BEGIN 
     SELECT 
      @DynamicStatement 
    END 
END 

、ちょうどムラデンのSSMS Tools Pack(無料)つかむとスクリプトアウトコンフィグテーブルにそれを使用します。

関連する問題