C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.40795 の関連記事表示

<< 0 >>
■40795  Re[1]: VBからAccess.mdb接続 排他モード時処理
□投稿者/ 魔界の仮面弁士 -(2009/09/03(Thu) 12:07:53)
    No40793 (hs さん) に返信
    > VBでAccessのmdbをDBとしアプリを開発しております。
    
    mdb は、64bit アプリから利用できないという制限もありますので、
    他の製品(SQL Server Compact / SQL Server Express 等)を使った方が無難かも。
    
    # もっとも、今から方向修正するわけには行かないのでしょうけれども。
    
    
    > そこで、別ユーザーが排他モードでmdbをOpenしている事を判別できればと考えております。
    
    単純に mdb に接続してみて、エラートラップで判断してください。
    
    排他接続されている場合、他の接続は全て例外となりますので、
    それを Catch してやれば OK です。
    
    
    >     ほかのユーザーが排他モードでOpenしているか判別
    >     If 排他でなければ
    事前判定するのはマズイかと。
    
    判定してから、実際に利用するまでの僅かなタイミングで、
    他の排他接続が割り込まれる可能性がありえますので、例外処理等を用いて、
    判定と処理を同時に行った方が安全かと思いますよ。
    
    
    >       '一定時間待機
    >       System.Threading.Thread.Sleep(500)
    フォームを持つメインスレッドからは、Sleep を呼び出さないようにしてください。
    
    
    > 現状、複数ユーザーが更新処理を同時に行った際に取得できているエラーは 「他のユーザーまたはプロセスで使用されているの、ロックできませんでした。」というエラーです。
    微妙にメッセージが間違っている気も。
記事No.40793 のレス /過去ログ70より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -