mysql:6075
From: Takeyuki Miyagawa <Takeyuki Miyagawa <miyagawa@xxxxxxxxxx>>
Date: Tue, 03 Sep 2002 10:33:25 +0900
Subject: [mysql 06075] Re: テーブルのロックについて
宮川です。 >実は「ABCDE00123」のようなアルファベットとの >組み合わせになっておりまして、 >文字型でフィールド宣言しているんですよ。 >なもんで、「手動」でインクリメントしています。 あんまり賢くないやり方ですが・・。 ロックをどうにかするとすれば、伝票の最大値を取得して、 加工してから登録すればロックをする必要もないと思います。 1.select 伝票番号 from table; 2.取得した伝票番号の加工 3.update table set 伝票番号 = 新伝票番号 where 伝票番号 < 新伝票番号 4.更新件数の確認 1件のレコードの更新ができればOKで、0件更新の場合には 1.戻る。 ただ、集中してアクセスがある場合に、運が悪いといつまでたっても 伝票番号の登録ができない端末が出たりしそうなきがしますが。 それか、CONNECTION_ID()で thread_id を取得、保持しておいて 処理で止まったままなら、止まったのをKILL thread_id で切るとかでしょうか。 ---- miyagawa@xxxxxxxxxx
6057 2002-09-02 15:21 [田雑 雅広 <TazouM@x] Re: テーブルのロックについて -> 6075 2002-09-03 10:33 ┗[Takeyuki Miyagawa <m]