

RDB(リレーショナルデータベース)とRDBMS(リレーショナルデータベースマネージメントシステム)の違いは何なのでしょうか?
RDBは単体ではデータを関連付けて保存することしかできなくて、そこから条件に合ったデータを抽出したり検索したりするのがRDBMSという事なのでしょうか?
今まで同じ意味だと思っていましたが、
(例)
(PostgreSQLをインストールするだけで、データを関連付けて保存できて、抽出も検索もできる)
この認識は間違っているのでしょうか?
基本的なことで申し訳ございませんが、よろしくお願いいたします。
No.4ベストアンサー
- 回答日時:
このふたつの言葉の違いを、説明するなら・・・MS(マネージメントシステム)の部分の差ですね。
こう考えてみればよいかもしれません。
データベースという世界があります。これは、データを関連づけて保存し、後で検索・運用するためのシステムに関する全般を指す言葉です。(世の中にあるデータベースはリレーショナルデータベースだけではありません。他にもいっぱいあります。)
データベースの機能を実現するための理論の一つがRDB(リレーショナルデータベース)です。これは、データを表の形で表し、それを保存・検索するための手段を表した理論です。(例えば、通信の世界のプロトコルとか、プログラミングの世界におけるアルゴリズムとかと対比させるとわかりやすいかな?)
理論は、実際のコンピュータに実装しないと、役に立ちません。RDBを実際に実装したもの・または稼働しているRDBを動かすためのプログラムセットをRDBMSと言います。世の中で稼働しているオラクル・SQL SERVER・MYSQLなどが、この一例です。
まぁ、普通は、こんなに厳密に言い分けることも少ないでしょうし、RDB=RDBMSでも、大きな問題は無いです。あなたが、理論書を書こうとしているなら別ですけどね。
No.3
- 回答日時:
#2です。
誤解させる可能性があるので、#2の説明を一部訂正します。#2回答の3行目
RDBを管理するのがRDBMSであり、次のような機能が最低限、備えられます。
↓
しかし、本来のデータベースは、表形式やカード形式などのような単純なものではありません。
RDBは多様なデータの管理が可能で、そのRDBを管理するのがRDBMSであり、次のような機能が最低限、備えられます。
No.2
- 回答日時:
表計算ソフト等の普及で、単に情報を収集整理したものを、「データベース」と呼ぶ人、サイト、雑誌があります。
そういったデータベースを表の形式で表し、関連付けしたものをRDBと呼ぶ人、サイト、雑誌もあります。
RDBを管理するのがRDBMSであり、次のような機能が最低限、備えられます。
(1)DB定義とアプリの独立
・・・ビューなどで必要な部分だけ見せられるし、アプリ側は(基本的な操作では)ビューで見える部分だけを意識すればよい。
列の追加や削除、列のデータ型の変更等があった場合、その部分を参照していないアプリには影響しない。
(2)DMLでの操作が可能
・・・リレーショナル型であればSQL、構造型(階層型、ネットワーク型DBの国際標準規格)であればDMLで、DB操作が可能。
つまり、ファイル操作でのオープン&クローズ、割り当て、例外処理などを、アプリ側で行う必要がない。
(3)排他制御
・・・同時実行時による不整合を防止。
どういった単位(表、ページ、行など)で、どういった区間(接続中、1SQL実行中、1行の操作中だけなど)、どういった強さ
(他人には参照さえも許さない、他人には更新中の行など以外は参照を許す、更新してても参照を許すなど)で排他制御
するかといった選択が可能
(4)トランザクション
・・・複数の表や行を更新した場合で、何らかの障害が発生した場合、すべての更新を有効にしたり無効にしたりできる
(5)障害回復
・・・チェックポイントダンプ、更新ログを取得し、DBMS自身やアプリが何らかの要因で異常終了した場合、DBを自動回復する。
利用者側で任意の時点でバックアップを取得し、バックアップ時点への回復、さらにその時点からの更新ログでの回復などを
可能とする。
(6)セキュリティ
・・・ファイルシステムレベルの権限以外に、DBMEに接続する権限、表などを定義する権限、表などをユーザ毎にselect、update
など細かなアクセス権限の設定が可能
(7)性能チューニング、稼働状況の監視などの支援
・・・性能チューニングや稼働状況の把握などのために、各種の情報を得られる
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PostgreSQLの再インストールに...
-
createdbでいきなりつまづいて...
-
PostgreSQLについて教えてくだ...
-
ディスク上のサイズの乖離が大...
-
date型に空白を入れるとエラー...
-
Windows版 pg_dumpの結果をログ...
-
psql でのエラー出力について
-
pg_restoreでエラー
-
tar.gzファイルのリストアについて
-
CSVファイルをBULK INSERTでSQL...
-
Query OK, 0 rows affected
-
oracle spool SJIS → UTF-8
-
C#で大量のデータを扱うソフト...
-
新規作成したPostgresqlデータ...
-
Access2010でリボン等を非表示...
-
ACCESS VBA;コマンドボックス...
-
テーブル単位のリストア
-
ソケットの異常終了について
-
アクセスで、OLEサーバーも...
-
SQL+Plusの訂正
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PostgreSQLについて教えてくだ...
-
createdbでいきなりつまづいて...
-
SJISのDBは作れますか?
-
PostgresSQLの環境設定について
-
PostgreSQLの再インストールに...
-
quoteした文字列を使ったSQL文...
-
\\copyコマンドでのCSV取り込み...
-
IDの払い出し(文字列)
-
文字コードエラー
-
PL/pgSQL 引数の数
-
initdbの文字コードと違う文字...
-
文字エンコーディングをEUC_JP...
-
ログイン履歴
-
データ型の変更について
-
すでにあるsqlファイルを使用し...
-
RDBとRDBMSの違いは何!?
-
PostgreSQLのpsqlでユーザの扱...
-
phpPgAdminの使い方について
-
postgresのdatabase名と、そのe...
-
時間のフォーマット
おすすめ情報