コンピューター, データベース
多対多:Accessでの例では、SQLインチ どのように多対多を作るには?
すべての DBMS(データベース管理システム) 、テーブル間の関係のいくつかの種類があります。 中でも一対一、一対多、多対一、および多対多(いくつか1つにこれらの2つのタイプを識別するために傾斜しています)。 後者の例として、そのようなアクセスまたはSQLのような異なるデータベースにおけるその応用の説明は、この記事で説明します。
定義
多対多の関係は、他のすべてのインスタンスのエッセンスの一つのコピーのいずれかに一致するように定義されます。 換言すれば、第二(第一)のすべてのフィールドに関連付けられた第1(第2)のテーブルの各フィールド。
このスキームは明らかに、この関係の本質を反映しています。
場合は多対多の関係を使用することができますか?
学生グループと教師のグループ - 多対多の例。 各学生は、今度は、講義を数の学生を与えるいくつかの教授に一度学習します。 画像に一対多および多対多の間の差を示しています。
多対多の関係は、結局のところ、実際に、大規模なデータベース、一般的に実際に、唯一の教育目的のために使用される小型の例示的実施例の製造にしばしば必要であること、それらの間に、データベース内の複数のエンティティと複数の関係 - に頻繁に頼ることのより多くの可能性多対多。
どのように多対多を作るには?
問題の関係の例としては、やはり、物品の過程で追加されますが、それが何であるかを理解するために、だけでなく、どのようにそれを実装するだけでなく、重要です。 原理はすべてのために同じままこの処理の詳細は、直接、仕事のために選択したデータベースに依存します。
Microsoft Accessの
「マイクロソフト」からOfficeソフトウェアは、非常に長い時間のためのソフトウェア市場でよく知られています。 これは、テキストエディタWorfd、エクセル表プロセッサおよび「オフィス」の行に属する他の付属しています。 購入し、彼の「同僚」とは別にして - あなたは(「アクセス」「ACCES」、直訳と読む)にアクセスすることができます。 もちろん、ライセンスされたソフトウェアを購入することをお勧めしますが、それは海賊版の再梱包は通常のファイル、または急流の手の形で、広大なウェブで見つけることができますどのくらいのは秘密ではありませんされています。 「マイクロソフトAccesのは、」でも、ポータブルアセンブリで使用可能です。 ソフトウェアは、多くの場合、長期的な使用としない場合、それはPCで動作するように設置し、特別なスキルを必要としない、それが選択のために最適です。
-コンテキストからは、「マイクロソフトAccesの」ことは明らかである データベース管理システム。 そして、最も人気の一つ。 それは論理に基づいてされることを意味し、関係ある データモデル、 を指し、彼の仕事の過程である 集合論 と一階述語論理。 アクセス(例は説明に説明する)における多対多の関係は非常に、非常にシンプルに実現されます。 それを考えてみましょう。
2つのテーブルがあります。..
新しい何かを発明しないようにするためには、学生に関する多対多の例を説明するために、すでに述べたがかかります。 あなたは、テーブル「学生」とテーブルを作成しなければならない「教師を。」 これらの両方の第一及び第二の主キーです。 第一および第二のテーブルのキー - また、2つのエンティティのインスタンスを結合するためのフィールド別のテーブルを必要とします。
我々は別の例を検討している場合:みましょうのは言うが、選手とチーム(異なるチームでプレー選手の少なくとも一つの事実を与えられ、そして各チームは11人の選手で構成されている)は、変更されません接続を構築しています。 彼らはまた、3つのテーブルが必要になります。 このうち、「サッカー」やメインとして「チーム」と一つの中間。
データスキーム
データベース内のテーブル間の関係の「Microsoft Accesのは、」タブの「データスキーム」を使用して実装しました。 表示パネルは、すべてのエンティティ(この場合、すべての3つのテーブル)に追加されます。 元本間の多対多の2つの関係を使用することになり、1対多の関係(「学生」と「教師」)およびステージング表を作成します。 これを行うには、それぞれの主キーを相互接続する必要があります。
上の図は、どのタブ「データ回路」(Relathionships)を示しています。 数は無限にテーブルボードに追加します。 場所は、ユーザによって完全に調整可能です。
SQL
SQLのデータベースの設計 - 「Accesの」へのより硬いタスク。 maykrosoftovskih製品は完全にオフィス環境に適応している場合は、巨大なを持っていると、リリースごとに、すべての拡張可能な機能を更新しますが、シンプルなユーザーインターフェース、SQLのための便利同時に - それは別の非手続き型プログラミング言語は、ある異なるプラットフォーム上のどの付きあなたは、データベースと連携することができます。 OracleのMySQLおよびDB2(ポピュラーではなく、その種類の唯一の1):このタスクのためのよく知られているソフトウェア。 それらのそれぞれは、その繊細さとニュアンスを持っているという事実にもかかわらず、SQL言語は、彼らの「統一」です。 他の人に対処するために、それらの少なくとも1つで動作するように学習することにより、はるかに簡単になります。
作成し、記入して特別なコードやスクリプトによって必要なSQLの既存のデータベースへの直接行動。 しかし、すでに「多対多」のセクションにそれを作った人は、このプログラミング言語での例を以下に示す、SQL言語の少なくとも基本的なコマンドや原則を知っている必要があります。
多対多の作成の原則
長期の加盟は、いくつかを困らと「霧を解き放つ」が、実際には通信の実現の原理は同じままでした。 中間 - 多対多の関係を入力するには、実際に実施されているのみならず、「アクセスも」が、また、SQLで、当初2つのベーステーブルとを作成する必要があります。 同様に、キーである:基本的な性質は、リンクテーブルに記録されてそれぞれがメインフィールドです。 これはSQL-多対多の関係は、「Accesの」とは根本的に異なっていないことを意味します。
通信の実装
多対多のメインテーブルで元のキーに似た外部キー(FOREIGN KEY)を使用して、SQLスクリプト内に実装するには。 作成および/または編集するとき、彼らはすべてのフィールドと一緒に記録しました。
多対多の役割
一般的には、内のエンティティ間の関係 のデータベースは、 それらに格納されている情報の整合性のために使用します。 必要なすべての接続でのみうまく設計されたデータベースは、安全なストレージ、ユーザーエクスペリエンスを保証し、外部からの影響や変化に耐性がある構造です。 データベースは、組織全体、会社や事務所でのデータが含まれている場合は通常、それは別のインスタンスを持つエンティティのセットが含まれています。
これは、これらの方式の準備(「Accesの」)または(「オラクル」または「DiBiTu」で)スクリプトを書くに存在することを意味する少なくとも一つの多対多。 DBキング - 例SQLは、多くの場合、トレーニングコース「データベース編成」で使用されています。
王のデータの基本
トレーニングデータベースは、キング法人に関する情報です。 テーブルの中で:
- 同社の従業員は - 従業員ID、姓、名、およびミドルネームのイニシャル(外国名に焦点を当てる)、また上司のためのコードや位置を占め、従業員、提供彼らの給与と歩合を受ける企業への入院の日付、部門コードが含まれています。
- 企業の部門 - テーブルのフィールドの間では、コードと部門の名前だけでなく、その場所のコードを持っています。
- コードの配置と都市の名前についての情報を入力する必要留置部門、。
- 会社内の位置 - 2つのフィールドを持つ小さなテーブルは、コードとその正式名称を掲載。
- 企業・バイヤー - フィールド:コードと買い手、住所、市、州、郵便番号や地域コードの名前、電話番号、顧客コードのサービスマネージャ、買い手とコメント(コメントやメモ)のためのクレジット。
- コードとの契約の日付、買い手コード、配達日や契約の合計額を含む販売契約、。
- 販売の行為 - コードの行為と行為、製品コード、その価格、購入数量、総購入費用を含み契約のコード;
- 商品 - 製品のコード名。
- 価格 - 製品コードは、彼に価格、可能な限り低い価格、設立日とキャンセル価格の日付を発表しました。
1対1または1対多のテーブルまでに関連付けられた二つまたは三つのフィールドを超えないもので小さなテーブルが利用可能。
例えば、「会社の従業員」、「会社・消費者」、「販売契約」と「販売の行為」としてのスケールと同じテーブルには、いくつかと、いくつかのエンティティに関連付けられている - 「仲介」の助けを借り多対多の関係で。 表「会社のバイヤー」それは他のテーブルと外部キーから取られ、フィールドの多くを持っているので、のような、仲介そのものです。 また、規模や関係データベース「キング・コーポレーションは、」すべての関係が密接に互いに相関し、お互いに影響を与えているということです。 それらの少なくとも1つの破壊は、データベース全体の整合性の破壊につながります。
重要なニュアンス
かかわらず、使用されるデータベース管理システムの、多対多を実装する場合、姿勢を策定されると、正しいキーを決定することが重要です。 誤ってその主な目的を満たしていない接続実装 - つまり、テーブルの整合性を確保するために、結果として、代わりに予想さ快適さ、ユーザは、編集テーブルとそのデータの充填中、一方、不便および追加の問題、特に明らかにされます。
Similar articles
Trending Now