2017-03-16 6 views
0

Sybaseで#tempテーブルを作成する速度を上げるための通常のアドバイスは、insertの代わりにselect intoステートメントを使用することです。これはトランザクションログに書き込まないためです。トランザクションログなしでSybase ASEの#tempテーブルにデータを書き込むことはできますか?

ただし、私のアプリケーションのデータで#tempテーブルを作成する必要があります。別のテーブルではないので、select intoは使用できません。また、bcpを使用して#tempテーブルを設定することもできません。

#tempテーブルにトランザクションログに書き込まないようにアプリケーションのデータを設定するにはどうすればよいですか?

それが問題にした場合、アプリはあなたがASE 15.0にしていると仮定すると、JavaのJDBC

+0

非#温度テーブルを作成してからBCPを使用するのはどうですか? –

+0

@MichaelGardner - 残念ながら、オプションではありません(そうでなければ、私は間違いなくそのルートに行きます) – DVK

答えて

0

を使用している、あなたは潜在的に既存の表に... SELECT使用することができます...。これは正規の表では正式にはサポートされていませんが、表に索引がなく、挿入された表が問合せのSELECT部分​​で参照されていなければ機能します。また、ストアドプロシージャでこれを行うことはできません。

+0

これは私の質問にどのように答えますか? SELECTは既存のテーブルから選択します。私のデータはアプリ内で** ** – DVK

+0

異なるセッションから#tempテーブルにアクセスする方法はありません。現在の(所有している)セッションからのみアクセスできます。だから、最初に(別のセッションから)一意の名前のテーブルにデータをBCPしてから、#tempテーブルのセッション(#tempテーブルのセッションから)に引き出すか、ユニークなセッション識別子として追加の列。 – RobV

関連する問題