1

SQL データ キューブがあります。キューブからリレーショナル データ テーブルにデータをエクスポートしたいと考えています。SSIS データ フロー タスクを使用してデータを抽出しようとしました。しかし、いくつかのデータ変換の問題とその他のいくつかの問題があります (データ変換アクションを使用しましたが、問題を完全に解決することはできません)。

次に、 script task を試しました。データ キューブに接続してデータを取得します。その後、テーブルに挿入します。とても時間がかかりました。

AdomdConnection conn = new AdomdConnection("Data Source=bci-bifsrv-01;Catalog=BInventoryAge");
        SqlConnection sqlConn = new SqlConnection(@"Data Source=.;Initial Catalog=Couriers;Integrated Security=True");

        conn.Open();
        string commText = @"--query--";

        AdomdCommand cmd = new AdomdCommand(commText, conn);
        cmd.CommandTimeout = 5000;
        AdomdDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

データキューブからデータを抽出する最良の方法は何ですか?

4

1 に答える 1

0

OLE DB Provider for Analysis Services 10.0 を使用している場合、データ リンクのプロパティに移動して、[拡張プロパティ] フィールドに [Format=Tabular] を追加します。これにより、同様の問題が解決されることがわかっています。

もう 1 つのオプションは、OLE DB の代わりに ADO.NET を使用して接続することです。

これらのいずれもうまくいかない場合は、キューブから受け取ったときにすべての列を DT_WSTR に変換し、正しい形式に再度変換することをお勧めします。

お役に立てれば。

于 2015-01-08T07:59:16.213 に答える