2017-06-09 26 views
0

私はストアドプロシージャ(sybase db)を実行しているperlスクリプトを持っています。 同じperlスクリプトで、私は.csvファイルからレコードを読み込んでいます。どういうわけか私は自分のストアドプロシージャでこれらのレコードを取得したい。 これらのレコードをdb内の新しいテーブルに書き込むことなく、これを行うことができます。一時テーブルをperlスクリプトで作成し、ストアドプロシージャでアクセスできますか?

私は一時テーブルを使用すると考えました。 perlスクリプトでテンポラリテーブルを作成し、ストアドプロシージャにアクセスできますか?

+2

もしあなたがSQLを介して行うことができるなら、あなたは確かにPerlからそれを行うことができます。 – simbabque

答えて

2

私はいくつかの基本は

あなたのストアドプロシージャは、データの複数の行に取り組んでいますと仮定し(そうでなければ、データの行ごとに一度PROCを呼び出すことができます)ので、FWIW ...


よ....

一時テーブル( '#'プレフィックス)は、それを作成するログインセッションに関連付けられています。

ログインセッションが有効なままであれば、#tempテーブルはアクセス可能なままです(「ドロップテーブル」を発行しないと仮定します)。

ログインセッションが終了すると、一時表が消えます。

別のログインセッションでは、テンポラリテーブルにアクセスできません。


あなたのperlスクリプトは、作成することができていればperlスクリプトは、すべてのアクションを実行する(表を作成し、挿入、選択)する(接続別名)と同じログインセッションを使用して一時テーブルを移入し、照会に対する必要があります一時テーブル。

保存されたprocは、同じログインセッションで呼び出す必要があります。これは、一時テーブルにアクセスする場合です。

関連する問題