問題タブ [foreach-loop-container]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - Foreach ループ コンテナー内の SSIS DFT でデータ変換変換を実行する
SQL Server から MySQL にデータを移行する必要がある約 35 のテーブルがあります。私はこのプロジェクトに SSIS を使用しており、データベース内のすべてのテーブルを反復処理するスクリプト タスクと Foreach ループ コンテナーを使用して ( Load Multiple Tablesを使用して) 制御フローをセットアップしました。ここで行う必要があるのは、一部のテーブルの一部の列のデータ型を、宛先テーブルにダンプする前に「Unicode 文字列 [DT_WSTR]」に変換することです。これは SSIS を介して実行できるものですか? もしそうなら、ポインタや一連の指示は素晴らしいでしょう.
ありがとう、
プラティック・ガンジー
ssis - SSIS foreach ADO Enumerator オブジェクト内の重複行
こんにちは、差分スナップショットの日付を取得して SCD 2 次元に処理する SSIS パッケージを作成しています。最後の行を除いて重複したスナップショットを引き起こした「Foreach ADO列挙子」を除いて、すべてうまくいきます。これを実現するために、次のソースを参照します。
- http://www.codeproject.com/Articles/14341/Using-the-Foreach-ADO-Enumerator-in-SSIS
- https://www.simple-talk.com/sql/ssis/implementing-foreach-looping-logic-in-ssis-/
二重ループの問題を解決するにはどうすればよいですか。
このパッケージは、次の環境で開発されています。
- Windows 2008 サーバー R2 エンタープライズ
- SQL Server 2012
- 入札 2013
以下の図は、これがどのように実装されているかを示しています。
variables - テーブル名を動的に渡す - 変数からの SQL コマンドの使用
私はこのスレッドを読みました: SSIS : テーブル名を動的に渡します。これはまさに私が達成しようとしていることです。文字列変数を作成するところまで来ました。
ただし、OLEdb ソース エディターで、変数から SQL コマンドを使用することを選択すると、プレビューで次のエラー プロンプトが表示されました。
HRESULT からの例外: データ フロー タスクでの 0xC0202009 エラー [OLE DB ソース [37]]: SSIS エラー コード DTS_E_OLEDBERROR。OLE DB エラーが発生しました。エラー コード: 0x80040E14。OLE DB レコードが利用可能です。ソース: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80040E14 説明: "ステートメントを準備できませんでした。". OLE DB レコードが利用可能です。ソース: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80040E14 説明: "テーブル変数 "@" を宣言する必要があります。
ここで何が問題になる可能性があるかについての助けに感謝します。
以下は、私が設定したコンポーネントです。
SQL タスクの実行:
SELECT name from sys.tables WHERE name like'%$Company Information'Order by name 結果セット: Variable Name = User::IndivTableName; 結果名 = 0; データ型=オブジェクト
For Each ループ コンテナー:
列挙子: Foreach ADO 列挙子
ADO オブジェクト ソース変数: User::IndivTableName
列挙モード: 最初のテーブルの行
(これは必要ですか?) 変数のマッピング: Variable = User::IndivTable; インデックス=0; データ型 = オブジェクト
文字列変数:
変数名: ユーザー::会社情報
式: "select [name],[address],[address 2],[city],[phone no_],[fax no_], [VAT Registration no_],[registration no_],[business type] from " + " @[ユーザー::IndivTableName] "
評価値: [名前]、[住所]、[住所 2]、[市区町村]、[電話番号_]、[ファックス番号]、[VAT 登録番号]、[登録番号_]、[業種] を @[ユーザー] から選択::個別テーブル名]
データ ソース エディタ:
データ アクセス モード: 変数からの SQL コマンド
変数名: ユーザー::会社情報
変数値: select [name],[address],[address 2],[city],[phone no_],[fax no_], [VAT Registration no_],[registration no_],[business type] from @[User ::個別テーブル名]
php - 1つのforeachループでアイテムごとに個別の大規模を取得するためにPHPで大規模を整理する方法は?
URL への xpath クエリを作成し、要素のコレクションを取得しました。次に、アイテムごとに大量のアイテムの大量のコレクションを取得する必要があります。最近のコードでは、大規模なものは 1 つしかありません。大規模なものを正しく整理するのを手伝ってください。
ssis - 単純な CSV データ フローの SSIS エラー
私のトラブルであなたの一日を暗くして申し訳ありませんが、SSIS は私を壊してしまいました! 私は SSIS に不慣れで、誤解しているようです。
背景: Foreach ループ コンテナーと、CSV ファイルを SQL Server ステージング テーブルにインポートするいくつかの派生列を含むデータ フローを含む基本パッケージのいくつかのバージョンがあります。これは非常に簡単で、SQL 実行タスクとファイル移動が含まれていますが、これらは正常に機能します。問題は、Foreach ループとデータ フローにあります。
このパッケージの 1 つのバージョン (「A」と呼びましょう) があり、正常に動作しているように見えました。フォルダー内の複数のファイルを処理し、ステージング テーブルにレコードを挿入し、SQL ステートメントを適切に実行し、ファイルをアーカイブに移動します。プロセスを慎重に QA するまでは、すべて問題ないように見えました。1 つのファイルからデータを複製し、2 番目のソース ファイルからデータをインポートしていないことが判明しました。しかし、データの 2 番目の複製ラウンドには、2 番目のファイルのソース ファイル名 (派生列を介して) が含まれていました (ただし、最初のファイルからのデータ)。したがって、実際のデータを見て、2 番目のソース ファイルの値がステージング テーブルに書き込まれていないことがわかるまで、両方のファイルを正常に処理したように見えました。
これを発見すると、問題は Foreach ループにあり、さまざまなファイル パスと名前の変数をどのように設定するかがわかりました。そこで、パッケージの新しいバージョンを作成してみることにしました。パッケージ A をコピーすることから始め、パッケージ B を作成しました。B では、ソース接続マネージャーを削除し、すべての新しいファイルとパス変数と共に新しい接続マネージャーを作成しました。次に、データ フローと Foreach ループのさまざまな要素をクリーンアップ/修正/置換しようとしました。その過程で、A からの高度なマッピング (DID が機能する) が事実上すべて文字列として設定されていることを発見しました (Currency 列と Date 列も)。それは正しくないように思えたので、データ型を Currency に変更して各ソースの money 列を変更し、各日付関連の列をデータ型 Date に変更しました。
それに続いて何十ものエラーが発生し、パッケージ B を実行できません。すべての B データ型を文字列に戻しました (DID が機能するパッケージ A のセットアップをミラーリングします)。しかし、まだ喜びはありません。
これにより、私よりも賢い皆さんにいくつかの質問をすることができます。
1) SSIS が適切なデータ型を使用してソース CSV データを解釈できないのはなぜですか? つまり、一部の列が明確かつ完全に数値、通貨、または日付である場合、すべての入力列を STRING として設定する必要があるのはなぜですか? (はい、ソース CSV ファイルは非常にクリーンです。ほとんどのファイルには NULLS さえありません)
a. 日付関連のソース列の高度なマッピングを日付に変更すると、常に存在するエラー メッセージが表示されます: [フラット ファイル ソース [30]] エラー: データ変換に失敗しました。列「決済日」のデータ変換で、ステータス値 2 とステータス テキスト「データが失われる可能性があるため、値を変換できませんでした。」が返されました。
2) パッケージ B でデータ型を String にリセットしても、まだエラーが発生します。通常は切り捨てエラーです (はい、これらの列の 1 つで長さを 250 に調整しました)。a. エラー メッセージ: 「データが失われる可能性があるため、値を変換できませんでした。」. b. (テストとして) 列を無視するようにマッピングをリセットすると、次の列で同様のエラーがスローされます。
3) パッケージ A がファイルのデータを複製し、2 番目のファイルを処理しないのに、エラーをスローせず、両方をアーカイブに移動する理由はありますか?
4) データ ビューアーに解析エラーがあるように見える (間違った列にデータが表示される) のに、データ ビューアーでデータのコピー機能を使用してそれを Excel に貼り付けると、すべてのデータが完全に整列するのはなぜですか?
5) 初心者の SSIS ユーザーが理解する必要があり、このサイトだけでなくドキュメントや Web 記事の検索ではわからないヒントやコツはありますか?
役立つ場合は詳細を提供できますが、これらのパッケージは非常にシンプルであり、それほど不満を感じることはありません.
洞察に感謝します。
DGP
sql-server - SSIS SMTP 接続 Foreach ループごとに接続を再確立する
SSIS に foreach ループがあり、ループするすべてのレコードに対して電子メールを送信します。Exchange サーバーのタイムアウト設定である 10 分間ジョブを実行した後、SMTP 接続タイムアウト エラーが発生します。
foreach ループの繰り返しごとに SSIS パッケージの接続を再確立する方法はありますか? 私はsqlserver 2014を使用しています。
ajax - ajaxを介してcodeigniterのforeachループから特定の画像IDを取得したい
ループから画像の特定のレコードを取得し、foreach
この値を別のページに取得したい