内容へ移動
Cat Paw Software
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
トレース:
rdbms
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== リレーショナルデータベース ====== ===== トランザクション ===== ==== エラーリード ==== | ダーティリード | 未コミットデータをリードすること。ロールバックされると不正な値を読み込んだという事になる。| | ファジーリード | トランザクション中に同じ条件で2回リードしたときに、結果が異なる。トランザクション中に他トランザクションによってコミットされると発生する。| | ファントムリード | トランザクション中に同じ条件で2回リードしたときに、行が消えたり増えたりしている。トランザクション中に他トランザクションによって挿入、削除がコミットされると発生する。| ==== トランザクション分離レベル ==== | Read Uncommited | コミットされてないデータが読める。| | Read Commited | コミットされてないデータは読めない。ダーティリードを抑止する。 | | Repeatable Read | トランザクション終了まで、そのトランザクションに影響するデータを更新できない。ファジーリードまで防げる。| | Serializable |トランザクション終了まで、そのトランザクションに影響しうるトランザクションは実行されず、待ち状態になる。ファントムリードまで防げる。| 下に行く程安全だが性能が犠牲になる。多くのDBはRead Commitedがデフォルト。MySQL(InnoDB)はRepeatable Readがデフォルト。 例えばRepeatable Readでは、あるトランザクションAで ''UPDATE t1 SET value = 5 WHERE number > 1'' というクエリを実行したとき、他のトランザクションで number > 1 の行をUPDATEしようとするとトランザクションAがコミットされるまで待たされる。SerializableではUPDATEに加えてINSERT, DELETEも待たされる。 ===== エンタープライズRDBMS無料版 ===== Oracleなどの高価なDBMSにも無料版が存在する。ライセンスをよく読んで使用すること。 * [[http://www.oracle.com/technology/software/products/database/xe/index.html|Oracle Database Express Edition 11g Release 2]] * 要OTN登録 * [[http://www.microsoft.com/ja-jp/download/details.aspx?id=29062|Microsoft® SQL Server® 2012 Express]] * [[http://www-306.ibm.com/software/data/db2/express/download.html|DB2 Express-C]]
rdbms.txt
· 最終更新: 2014/03/31 05:07 by
nullpon
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ