ホームページ よくある問題 現在使用されているほとんどのデータベース管理システムはどのような構造になっていますか?

現在使用されているほとんどのデータベース管理システムはどのような構造になっていますか?

Aug 24, 2022 pm 02:15 PM
データベース データベースマネージメントシステム データベースシステム データベース構造

データベース管理システムの構造のほとんどは「リレーショナル構造」です。関係構造は、単一の 2 次元テーブル構造を使用してエンティティおよびエンティティ間の関係を表すフォーマットされていない構造です。リレーショナル構造は、さまざまなエンティティと属性の間の関係を使用して、保存と変換を容易にするために、レコード グループまたはデータ テーブルの形式でデータを編成します。階層やポインタはありません。空間データと属性データの間の関係を確立する方法です。 . データを整理するための非常に効率的な方法。

現在使用されているほとんどのデータベース管理システムはどのような構造になっていますか?

このチュートリアルの動作環境: Windows 7 システム、Dell G3 コンピューター。

現在使用されているデータベース管理システムの構造のほとんどは「リレーショナル構造」です。

リレーションシップ構造は、「リレーションシップ モデル」とも呼ばれ、エンティティおよびエンティティ間の関係を 2 次元テーブルの形式で表現するデータ モデルを指します。

データ開発プロセスでは、階層モデル、ネットワーク モデル、リレーショナル モデルという 3 つの基本的なデータ モデルが作成されました。これら 3 つのモデルは、データ構造に従って名前が付けられています。最初の 2 つは、フォーマットされた構造を使用します。このタイプの構造では、エンティティはレコードによって表され、レコードはグラフの頂点として抽象化されます。レコード タイプ間の接続は、頂点間の接続アークとして抽象化されます。データ構造全体がグラフに対応します。階層モデルの基本構造はツリー構造であり、ネットワークモデルの基本構造は制限のない無向グラフです。リレーショナル モデルは、単一の 2 次元テーブル構造を使用してエンティティとエンティティ間の関係を表す、書式設定されていない構造です。リレーショナル モデルは、現在のデータベースで一般的に使用されているデータ モデルです。

関係モデル: レコード グループまたはデータ テーブルの形式でデータを編成し、さまざまなエンティティと属性の間の関係を使用して保存と変換を容易にします。階層やポインタはありません。空間データと属性データの間の関係を確立するための非常に効果的なデータ編成方法。

リレーショナル モデルには 13 の基本概念と基本用語があります:

(1) リレーションシップ: リレーションシップは 2 次元のテーブルに対応します。 -次元テーブルはリレーションシップの名前です。

(2) タプル: 2 次元のテーブル内の行をタプルと呼びます。

(3) 属性: 2 次元テーブルの列は属性と呼ばれます。属性の数を関係の要素または次数と呼びます。列の値は属性値と呼ばれます;

(4) (値) ドメイン (ドメイン): 属性値の値の範囲は値ドメインです。

(5) 構成要素:各行に対応する列の属性値、すなわちタプル内の属性値。 [2]

(6) リレーショナルスキーマ: 2次元の表の行定義、つまり関係の記述をリレーショナルスキーマと呼びます。一般的には(属性1、属性2、...、属性n)で表現され、例えば教師の関係モデルは教師(教師番号、氏名、性別、年齢、職名、所属)と表現できます。 。

(7) キー (コード): 関係内のエンティティを一意に識別する属性または属性のセットがある場合、それはエンティティのキ​​ーと呼ばれます。つまり、どの関係状態でも 2 つのキーと呼ばれます。関係のこの属性の値のすべての組み合わせが異なるタプル。

(8) 候補キー (候補コード): 関係内の特定の属性の値がタプルを一意に識別できる場合、関係のキーで属性を削除できない場合、そうでない場合はこの限りではありませんリレーションシップのキーを、リレーションシップの候補キーまたは候補コードとして指定された候補キーと呼びます。

たとえば、次の学生テーブルでは、「学生番号」または「図書館カード番号」でタプルを一意に識別でき、「学生番号」と「図書館カード番号」の両方でタプルを一意に識別できます。 「学生番号」と「図書館カード番号」の両方を学生関係の候補キーとして使用できます。

#学生番号名前性別年齢図書館カード番号所属S3001趙立
#張明
#男性
#22
B20050101
外国語
##S3002
李京
21
B20050102
外国語
##S4001
# #女
21
B20050301
管理

コース選択テーブルでは、属性グループ「学生番号」と「コース番号」のみがタプルを一意に識別でき、候補キーは (学生番号, コース) になります。番号)。

##S3001C1##S3001#S3002S4001 (8) 主キー(primary key):リレーションシップの複数の候補キーの中からユーザーを指定関係のタプルを一意に識別する場合、指定された候補キーは主キー、または単に主キー、キーワード、または主キーと呼ばれます。各リレーションシップには主キーが 1 つだけあり、通常は属性のより小さな組み合わせが主キーとして使用されます。例えば、生徒テーブルにおいて、データ操作の基準として「生徒番号」を選択した場合、「生徒番号」が主キーとなります。コース選択テーブルの主キーは(学生番号、コース番号)です。 (9) 主属性と非主属性: リレーションシップ内の候補キーに含まれる属性は主属性と呼ばれ、どの候補キーにも含まれない属性は非主属性と呼ばれます。
#学生 ID
コース ID
C2
C1
C3

(10) 完全なキーまたは完全なコード: リレーショナル スキーマ内のすべての属性のコレクション。

(11) 外部キーまたは外部キー: リレーションシップ内の属性がこのリレーションシップの主キーではないか、または主キーにすぎないが、別のリレーションシップの主キーである場合、それは次のように呼ばれます。外部キーまたは外部コード。

(12) スーパー キーまたはスーパー コード: 属性がリレーションシップのキーから削除されても、それがまだリレーションシップのキーである場合、そのようなキーはリレーションシップのスーパー キーまたはスーパー コードと呼ばれます。 。

(13) 参照関係と被参照関係: 外部キーによって相互に関連付けられ、相互に変換できる 2 つの関係を指します。

リレーショナル モデルの 3 種類の整合性ルール

1. エンティティ整合性ルールこのルールでは、関係内のタプルが次のとおりである必要があります。属性では null 値にする必要があります。 NULL 値がある場合、主キー値はタプルを一意に識別できません。

2. 参照整合性ルール

属性セット K がリレーションシップ スキーマ R1 の主キーであり、K がリレーションシップ スキーマ R2 の外部キーでもある場合、リレーションシップ R2 ではの場合、K の値は 2 つだけです。ヌル値か、R1 リレーションシップの主キー値に等しいかの 2 つの可能性が許可されます。

使用する場合は、次の点に注意してください:

    a. 外部キーと対応する主キーは、同じ値の範囲で定義されている限り、異なる名前を持つことができます。 。
  • b.R1 と R2 は、属性間の接続を表す同じ関係モデルにすることもできます。

    c. 外部キー値を空にすることが許可されるかどうかは、特定の問題によって異なります。

    3. ユーザー定義の整合性ルール

  • これは、アプリケーション環境によって決定される、特定のデータに対する制約です。

リレーショナル モデルの利点

(1) 単一のデータ構造リレーショナル モデルでは、エンティティであってもエンティティ間の接続であっても、 , リレーションシップで表され、各リレーションシップは 2 次元のデータ テーブルに対応しており、データ構造は単純かつ明確です。

(2) 関係は標準化され、厳密な理論的根拠に基づいて確立されている

関係を構成する基本的な規範は、関係内の各属性が分割できないことを要求し、関係が確立されている確かな理論的根拠に基づいており、厳密な数学的概念に基づいています。

(3) シンプルな概念と簡単な操作

リレーショナル モデルの最大の利点は、そのシンプルさであり、ユーザーが理解し、使いこなすのが簡単です。ユーザーは簡単なクエリ言語を使用するだけでデータベースを操作できます。

さらに関連する知識については、

FAQ

列をご覧ください。

以上が現在使用されているほとんどのデータベース管理システムはどのような構造になっていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Go 言語はデータベースの追加、削除、変更、クエリ操作をどのように実装しますか? Go 言語はデータベースの追加、削除、変更、クエリ操作をどのように実装しますか? Mar 27, 2024 pm 09:39 PM

Go 言語は、効率的かつ簡潔で習得が容易なプログラミング言語であり、同時プログラミングやネットワーク プログラミングに優れているため、開発者に好まれています。実際の開発ではデータベースの操作が欠かせませんが、今回はGo言語を使ってデータベースの追加・削除・変更・クエリ操作を実装する方法を紹介します。 Go 言語では、データベースを操作するために通常、よく使用される SQL パッケージや gorm などのサードパーティ ライブラリを使用します。ここでは SQL パッケージを例として、データベースの追加、削除、変更、クエリ操作を実装する方法を紹介します。 MySQL データベースを使用していると仮定します。

Hibernate はポリモーフィック マッピングをどのように実装しますか? Hibernate はポリモーフィック マッピングをどのように実装しますか? Apr 17, 2024 pm 12:09 PM

Hibernate ポリモーフィック マッピングは、継承されたクラスをデータベースにマップでき、次のマッピング タイプを提供します。 join-subclass: 親クラスのすべての列を含む、サブクラス用の別個のテーブルを作成します。 table-per-class: サブクラス固有の列のみを含む、サブクラス用の別個のテーブルを作成します。 Union-subclass: join-subclass と似ていますが、親クラス テーブルがすべてのサブクラス列を結合します。

iOS 18では、紛失または破損した写真を復元するための新しい「復元」アルバム機能が追加されます iOS 18では、紛失または破損した写真を復元するための新しい「復元」アルバム機能が追加されます Jul 18, 2024 am 05:48 AM

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

PHP で MySQLi を使用してデータベース接続を確立するための詳細なチュートリアル PHP で MySQLi を使用してデータベース接続を確立するための詳細なチュートリアル Jun 04, 2024 pm 01:42 PM

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

HTML がデータベースを読み取る方法の詳細な分析 HTML がデータベースを読み取る方法の詳細な分析 Apr 09, 2024 pm 12:36 PM

HTML はデータベースを直接読み取ることはできませんが、JavaScript と AJAX を通じて実現できます。この手順には、データベース接続の確立、クエリの送信、応答の処理、ページの更新が含まれます。この記事では、JavaScript、AJAX、および PHP を使用して MySQL データベースからデータを読み取る実践的な例を示し、クエリ結果を HTML ページに動的に表示する方法を示します。この例では、XMLHttpRequest を使用してデータベース接続を確立し、クエリを送信して応答を処理することで、ページ要素にデータを埋め込み、データベースを読み取る HTML の機能を実現します。

MySQL データベース管理システムの基本原理の分析 MySQL データベース管理システムの基本原理の分析 Mar 25, 2024 pm 12:42 PM

MySQL データベース管理システムの基本原理の分析 MySQL は、データの保存と管理に構造化照会言語 (SQL) を使用する、一般的に使用されるリレーショナル データベース管理システムです。この記事では、データベースの作成、データ テーブルの設計、データの追加、削除、変更などの操作を含む、MySQL データベース管理システムの基本原理を紹介し、具体的なコード例を示します。 1. データベースの作成 MySQL では、まずデータを保存するデータベース インスタンスを作成する必要があります。次のコードは、「my」という名前のファイルを作成できます。

PHP でデータベース接続エラーを処理する方法 PHP でデータベース接続エラーを処理する方法 Jun 05, 2024 pm 02:16 PM

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。

PHP を使用してデータベース内の中国語の文字化けを処理するためのヒントと実践 PHP を使用してデータベース内の中国語の文字化けを処理するためのヒントと実践 Mar 27, 2024 pm 05:21 PM

PHP は Web サイト開発で広く使用されているバックエンド プログラミング言語であり、強力なデータベース操作機能を備えており、MySQL などのデータベースとの対話によく使用されます。ただし、中国語の文字エンコーディングは複雑であるため、データベース内で中国語の文字化けを処理するときに問題が発生することがよくあります。この記事では、文字化けの一般的な原因、解決策、具体的なコード例を含め、データベース内の中国語の文字化けを処理するための PHP のスキルと実践方法を紹介します。文字化けの一般的な原因は、データベースの文字セット設定が正しくないことです。データベースの作成時に、utf8 や u などの正しい文字セットを選択する必要があります。