テキスト ファイルの内容を取得し、それを BlobColumn として SQL Server データベース テーブルにアップロードするデータ フローを SSIS で作成しました。テキスト ファイルは、文章、キャリッジ リターン、ライン フィードを含むドキュメントです。次のようにファイルをロードする Execute SQL トランスフォームがあります。
Use MyDB;
Create Table TextToToken(Filename nvarchar(60), FileType nvarchar(60), Document varbinary(max));
Go
Insert into TextToToken(Filename, FileType, Document)
Select 'TokenDoc1.txt' as Filename, '*.txt' as FileType,
* from OPENROWSET(BULK N'C:\Docs\Doc1.txt', SINGLE_BLOB) as Document
Go
Document BlobColumn を読み取るスクリプト コンポーネントを作成し、次を使用してカンマで区切られた単語を解析しようとしました。
public override void Input0_ProcessInputRow(Input0Buffer Row)
{
string[] words = BlobToString(Row);
}
private string BlobToString(BlobColumn blob)
{
string result = "";
try
{
if (blob != null)
{
result = System.Text.Encoding.Unicode.GetString(blob.GetBlobData(0, Convert.ToInt32(blob.Length)));
}
}
catch (Exception ex)
{
result = ex.Message;
}
return result;
}
コンマに加えて、ピリオド、スペース、改行改行に基づいて単語を区切るために上記を拡張するにはどうすればよいですか?