2

以下のパスから SSIS を使用してファイル名を抽出する方法を知りたいです。

パス:

O:\SourceFiles\Primary\care\ALC121.csv
O:\SourceFiles\Primary\care\COPL119.csv

以下に示すように、名前とフルパスをテーブルに挿入したいと思います。

表データ:

QueryName  FileName 
---------  ---------------------------------------
ALC121     O:\SourceFiles\Primary\care\ALC121.csv
COPL119    O:\SourceFiles\Primary\care\COPL119.csv
4

3 に答える 3

4

完全なファイル名は、ファイルの ForEach Enumerator から取得されると想定しています。次に、その文字列をベースファイル名だけに減らすことが要求されているようです。表現を使ってそこにたどり着く人もいますが、それは醜いアプローチだと思います。代わりに、スクリプト タスクを使用して、.NET ライブラリの機能を利用します。

System.IO.Path.GetFileNameWithoutExtension

指定されたパス文字列のファイル名を拡張子なしで返します。

QueryName2 番目の変数を作成し、それを String 型で呼び出して、スクリプトで読み取り/書き込み変数として設定します。その値を使用した metchod 呼び出しの結果に基づいて、その値を割り当てFileNameます。

次に、SQL 実行タスクを使用してそれらをテーブルに挿入します。a をパラメーターとして使用?します。

于 2013-02-14T17:26:23.423 に答える
0

拡張子なしのファイル名:

select substring(?,len(?)+1,(charindex('.',?)-1)-LEN(?))

4 パラメータ マッピングの場合
0 - フルパス
1 -ファイル
パス 2 - フルパス
3 -ファイルパス

于 2018-03-21T17:23:05.360 に答える