●データベースの排他制御
こんばんわ

データベースを利用しない人はほぼいない現在

データベースが何かわからない人はほとんどいないでしょう

でも、排他制御というデータベースにとって、入力・検索・出力と並んで非常に重要な機能があります

入力や出力、検索は皆さん、だれもがお目にかかる機能ですよね

会社の業務でもよく使う機能です

でも、排他制御は



説明できる方はあまりいないのではないでしょうか

●データを正確に保つ機能
排他制御とは、データベース更新において正しく更新できることを保証する機能です

えっ


でしょうね~~~




これは、もう縁の下の力持ちの機能ですから。
表立っては出てきませんね。
たま~~~に、んっ

●同時更新を許さない機能
皆さんが、データベースに何らかの入力をするとき

入力した値がデータベースにきちんと格納されることを疑うことはないですよね

さっき、『1』って入ってるのを『2』に入力したのに、そのあとデータを見たら『1』のままだったら

そんなデータベース使いたくないですよね。
このような現象が発生しないようにする機能が『排他制御』なんです。
●なければ、キツネに化かされる
このような機能が働かない場合って、やっぱりそうそうあるもんなんですよ

例えば・・・・
サーバーにAというファイルがありました。
①太郎さんは、サーバーからAというファイルを自分のPCにコピーして、それを開いて、『私は太郎です。』って入力しました。
②次郎さんは、サーバーからAというファイルを自分のPCにコピーして、それを開いて、『私は次郎です。』って入力しました。
③太郎さんは、ファイルを保存し、自分のパソコンからサーバーに書き戻しました。
④次郎さんは、ファイルを保存し、自分のパソコンからサーバーに書き戻しました。
さて、サーバー上のファイルAにはなんと入力されているでしょう?
太郎さんに聞きました。 太郎さんは『私は太郎です。』って入力されていますよって答えます。
次郎さんに聞きました。 次郎さんは『私は次郎です。』って入力されていますよって答えます。
どちらが正しいでしょうか?
二人とも大真面目に答えていますが、太郎さんは実際にファイルAを開くと、『私は次郎です。』って入力されているのを見て愕然とするでしょう。
まるでキツネに化かされているみたいに


さっき、太郎さんは『私は太郎です。』と入力したファイルA(のコピー)をサーバーに書き戻したのに・・・
そうですよね。そのあとに次郎さんが上書きしてしまっているからですよね。
このように排他制御がかかっていないと、太郎さんの努力が無駄になっちゃいますよね。
無駄になるぐらいならいいんですが、これが例えば在庫量だったりすると、
ビジネスチャンスを失ってしまいかねません。
どうです? 排他制御がとっても大切なデータベース機能だとお判りいただけたと思います。
●なぜこのような話を?
それは次回のお楽しみ

【このカテゴリーの最新記事】
-
no image
-
no image
-
no image