1

実行されるたびに一時テーブル X を作成するストアド プロシージャがある場合、何らかの一意のセッション ID を使用してストアド プロシージャを実行する方法はありますか? B が同じ手順を実行すると、一時テーブル X も作成されず、クラッシュします。

私は基本的に何かを行う手順が必要ですが、一時テーブルが既に作成されているため、手順が失敗することなく、複数の人が同時に同じ手順を実行できるようにしたいと考えています。MySQL のセッション変数で何かできることがあるかどうか、または誰かの接続情報を使用して、手順を実行している各人に固有のセッションを作成できるかどうか疑問に思っています。毎回テーブル X_session_ID を作成している可能性があります。ストアド プロシージャ内で一意の ID を生成する方法はありますか?

4

1 に答える 1

1

CREATE TEMPORARY TABLE一意の識別子を生成することに頼ることなく、ユーザー間の名前の衝突を防ぐために必要な一時テーブルを作成できます。

一時テーブル

テーブルの作成時に TEMPORARY キーワードを使用できます。TEMPORARY テーブルは、現在の接続に対してのみ表示され、接続が閉じられると自動的に削除されます。これは、2 つの異なる接続が、互いに競合したり、同じ名前の既存の非 TEMPORARY テーブルと競合したりすることなく、同じ一時テーブル名を使用できることを意味します。

于 2013-04-22T10:51:33.970 に答える