1

私は mysql を使用しており、SQLYog のクエリ ブラウザを使用していくつかのクエリを作成しています。SQL はいくつかの変数を使用します。以下に例を示します。

SELECT NOW() @cur_dt;
SELECT 'table' INTO @tbl;
SELECT DATABASE() INTO @db;
SELECT @@hostname INTO @host;

SELECT @host AS `host`, @db AS `database`, @tbl AS `table`, @cur_date AS `dt`;

SSIS 2005 (Sql Server Integration Services) でソースとして使用するために、この SQL を準備しています。私が抱えている問題は、変数が varchar や日付ではなく blob として渡されることです。

機能するそれぞれをキャストできますが、上記のSQLは、実際に必要なもののほんの一部であり、ユニオンの束です。それまでの間、すべてのユニオンを select でラップし、その時点でフィールドをキャストします。これをストアド プロシージャに入れて処理できることはわかっていますが、この正確なシナリオについて疑問に思っています。私の質問は、宣言時に変数の型を指定する方法があるかどうかです。

ありがとう、GG

PS。開発者を罰したい場合は、SSIS 2005 と mysql で動作させるようにします。

4

1 に答える 1

0

データが蓄積されたら、すべてのデータを mysql クエリのテーブルに選択するのはどうですか? これにより、データに妥当なデータ型が与えられます。次に、変数自体ではなく、SSIS を使用してテーブルと対話します。

例:

http://sqlfiddle.com/#!2/1b059/1

于 2013-01-04T22:39:31.990 に答える