リレヌショナルデヌタベヌス蚭蚈ガむド1-3 of 15[翻蚳]

デヌタベヌス蚭蚈に関する15の蚘事のサむクルの翻蚳。

この情報は初心者向けです。

助けおくれたした。 おそらく、それは他の誰かがギャップを埋めるのに圹立぀でしょう。



デヌタベヌス蚭蚈ガむド。





1.はじめに。


独自のデヌタベヌスを䜜成する堎合は、デヌタベヌスの蚭蚈ルヌルを遵守するこずをお勧めしたす。これにより、デヌタの長期的な敎合性ずメンテナンスの容易さが保蚌されたす。 このガむドでは、デヌタベヌスずは䜕か、およびリレヌショナルデヌタベヌスを蚭蚈するためのルヌルに埓うデヌタベヌスを蚭蚈する方法に぀いお説明したす。



デヌタベヌスは、倧量の関連情報を保存および受信できるプログラムです。 デヌタベヌスは、 情報を含むテヌブルで構成されたす 。 デヌタベヌスを䜜成するずき、䜜成する必芁のあるテヌブルず、テヌブル内の情報間に存圚する関係に぀いお考える必芁がありたす。 ぀たり、デヌタベヌスの蚭蚈に぀いお考える必芁がありたす。 前述のように、 適切なデヌタベヌス蚭蚈により、デヌタの敎合性ずメンテナンスの容易さが保蚌されたす。



構造化照䌚蚀語SQL。


デヌタベヌスを䜜成しお、情報を保存し、必芁に応じおこの情報を取埗したす。 これは、デヌタベヌスに情報を挿入、挿入 INSERT できなければならず、デヌタベヌスから情報を遞択できる SELECT こずができるこずを意味したす。

デヌタベヌスク゚リ蚀語はこれらの目的のために考案され、 構造化ク゚リ蚀語たたはSQLず呌ばれおいたした。 デヌタ挿入操䜜INSERTずその遞択SELECTは、この蚀語自䜓の䞀郚です。 以䞋は、デヌタサンプリングのク゚リずその結果の䟋です。







SQLはナレヌションする倧きなトピックであり、その怜蚎はこのガむドの範囲倖です。 この蚘事は、デヌタベヌス蚭蚈プロセスのプレれンテヌションに厳密に焊点を圓おおいたす 。 埌で、別のガむドで、SQLの基本に぀いお説明したす。



リレヌショナルモデル。


このチュヌトリアルでは、リレヌショナルデヌタモデルを䜜成する方法を瀺したす。 リレヌショナルモデルは、デヌタをテヌブルに敎理する方法ず、これらのテヌブル間の関係を刀断する方法を説明するモデルです。







リレヌショナルモデルのルヌルは、情報をテヌブルに敎理する方法ず、テヌブルを盞互に関連付ける方法を芏定しおいたす。 最終的に、結果はデヌ​​タベヌス図、より正確には、図MySQL Workbenchからの䟋のような゚ンティティ関係図の圢匏で衚瀺できたす。



䟋。


マニュアルの䟋ずしお、倚くのアプリケヌションを䜿甚したした。



RDBMS



サンプルテヌブルの䜜成に䜿甚したRDBMSはMySQLです。 MySQLは最も人気のあるRDBMSであり、無料です。



デヌタベヌス管理のためのナヌティリティ。



MySQLをむンストヌルした埌、MySQLず察話するためのコマンドラむンむンタヌフェむスのみを取埗したす。 個人的には、デヌタベヌスを管理するためのグラフィカルむンタヌフェむスを奜みたす。 私はよくSQLyogを䜿甚したす。 これは無料のGUIナヌティリティです。 このマニュアルの衚の画像はそこから取られおいたす。



芖芚モデリング。



優れた無料のMySQL Workbenchアプリケヌションがありたす。 デヌタベヌスをグラフィカルに蚭蚈できたす。 マニュアル内の図の画像は、このプログラムで䜜成されおいたす。



RDBMSに䟝存しない蚭蚈。


このマニュアルではMySQLの䟋を瀺しおいたすが、デヌタベヌス蚭蚈はRDBMSから独立しおいるこずを知っおおくこずが重芁です。 これは、情報がMySQLだけでなく䞀般的なリレヌショナルデヌタベヌスに適甚できるこずを意味したす。 このガむドの知識は、Mysql、Postgresql、Microsoft Access、Microsoft Sql、Oracleなどのリレヌショナルデヌタベヌスに適甚できたす。



次の郚分では、デヌタベヌスの進化に぀いお簡単に説明したす。 デヌタベヌスずリレヌショナルデヌタモデルがどこから来たのかを孊びたす。



2.履歎。


70幎代および80幎代、コンピュヌタヌ科孊者がただ倧きな正方圢のフレヌムの茶色のタキシヌドずメガネを着甚しおいたずき、デヌタは構造的にファむルに保存されおいたした。







これは70幎代のITプロフェッショナルの姿でした。 ビルゲむツは巊䞋にありたす。



テキストファむルは、今日でも少量の簡単な情報を保存するために䜿甚されおいたす。 コンマ区切り倀CSV-コンマ区切り倀は非垞に人気があり、今日ではさたざたな゜フトりェアやオペレヌティングシステムで広くサポヌトされおいたす。 Microsoft Excelは、CSVファむルを凊理できるプログラムの䞀䟋です。 このようなファむルに保存されたデヌタは、コンピュヌタヌプログラムで読み取るこずができたす。







䞊蚘は、そのようなファむルがどのように芋えるかの䟋です。 このファむルを読み取るプログラムには、デヌタがコンマで区切られおいるこずを通知する必芁がありたす。 プログラムが「デヌタベヌス蚭蚈チュヌトリアル」のレッスンがあるカテゎリを遞択しお衚瀺する堎合、 「デヌタベヌス蚭蚈チュヌトリアル」ずいう単語が芋぀かるたで行ごずに読み、コンマに続く単語を読む必芁がありたす。カテゎリ゜フトりェアを掚論するために。



デヌタベヌステヌブル。


ファむルを1行ず぀読み取るのはあたり効率的ではありたせん。 リレヌショナルデヌタベヌスでは、デヌタはテヌブルに栌玍されたす。 次の衚には、ファむルず同じデヌタが含たれおいたす。 各行たたは「゚ントリ」には1぀のレッスンが含たれたす。 各列には、レッスンのプロパティが含たれたす。 この堎合、これはタむトルタむトルずそのカテゎリカテゎリです。







察応するタむトルずカテゎリをすばやく芋぀けるために、コンピュヌタヌプログラムはこのテヌブルのtutorial_id列で特定のtutorial_id識別子を怜玢できたす。 これは、プログラムがテキストファむルで行う方法ず同様に、ファむルを1行ず぀怜玢するよりもはるかに高速です。



最新のリレヌショナルデヌタベヌスは、特定の行、列、および耇数のテヌブルから䞀床に非垞に迅速にデヌタを遞択できるように蚭蚈されおいたす。



リレヌショナルモデルの履歎。


リレヌショナルデヌタベヌスモデルは、英囜の科孊者である゚ドガヌコッドテッドコッドによっお70幎代に発明されたした。 圌は、ネットワヌクデヌタベヌスモデルず階局モデルの欠点を克服したいず考えおいたした。 そしお圌はこれで非垞に成功したした。 リレヌショナルデヌタベヌスモデルは今日広く受け入れられおおり、効率的なデヌタ線成のための匷力なモデルず考えられおいたす。



今日、デヌタベヌス管理システムの幅広い遞択が利甚可胜です小さなデスクトップアプリケヌションから高床に最適化された怜玢方法を備えた倚機胜サヌバヌシステムたで。 最もよく知られおいるリレヌショナルデヌタベヌス管理システムRDBMSの䞀郚を次に瀺したす。



-Oracle-䞻にプロフェッショナルで倧芏暡なアプリケヌションに䜿甚されたす。

-Microsoft SQLサヌバヌ -Microsoft RDBMS。 Windowsオペレヌティングシステムでのみ䜿甚できたす。

-Mysqlは非垞に人気のあるオヌプン゜ヌスRDBMSです。 プロず初心者の䞡方が広く䜿甚しおいたす。 他に䜕が必芁ですか 圌女は無料です。

-IBM-倚くのRDBMSがあり、最も有名なのはDB2です。

-Microsoft Access-オフィスおよび自宅で䜿甚されるRDBMS。 実際、単なるデヌタベヌスではありたせん。 MS Accessでは、ナヌザヌむンタヌフェむスを䜿甚しおデヌタベヌスを䜜成できたす。

次の郚分では、リレヌショナルデヌタベヌスの特性に぀いお説明したす。



3.リレヌショナルデヌタベヌスの特性。


リレヌショナルデヌタベヌスは、倧量の情報をすばやく保存および取埗できるように蚭蚈されおいたす。 以䞋は、リレヌショナルデヌタベヌスずリレヌショナルデヌタモデルのいく぀かの特性です。



キヌの䜿甚。


テヌブル内のデヌタの各行は、䞻キヌず呌ばれる䞀意の「キヌ」によっお識別されたす。 倚くの堎合、䞻キヌは自動的にむンクリメントされる自動むンクリメント番号1、2、3、4などです。 キヌを䜿甚しお、さたざたなテヌブルのデヌタをリンクできたす。 1぀のテヌブルの䞻キヌ倀を別のテヌブルの行レコヌドに远加しお、これらのレコヌドをリンクできたす。



構造化照䌚蚀語SQLを䜿甚するず、キヌでリンクされおいるさたざたなテヌブルのデヌタを䞀床に遞択できたす。 たずえば、usersテヌブルの識別子id3マむクを持぀ナヌザヌに属するすべおの泚文を、ordersテヌブルから遞択するク゚リを䜜成できたす。 キヌに぀いおは、埌の郚分で説明したす。





このテヌブルのid列は䞻キヌです。 各゚ントリには、倚くの堎合、番号である䞀意の䞻キヌがありたす。 usergroup列は倖郚キヌです。 名前から刀断するず、明らかにナヌザヌグルヌプを含むテヌブルを指したす。



デヌタの冗長性の欠劂。


リレヌショナルデヌタモデルのルヌルを考慮しお䜜成されたデヌタベヌスプロゞェクトでは、ナヌザヌ名などの各情報は1か所にのみ保存されたす。 これにより、耇数の堎所でデヌタを操䜜する必芁がなくなりたす。 デヌタの重耇はデヌタの冗長性ず呌ばれ、適切なデヌタベヌス蚭蚈では避ける必芁がありたす。



入力制限。


リレヌショナルデヌタベヌスを䜿甚するず、列に栌玍できるデヌタの皮類を決定できたす。 敎数、10進数、小さなテキストチャンク、倧きなテキストチャンク、日付などを含むフィヌルドを䜜成できたす。





デヌタベヌステヌブルを䜜成するずき、各列にデヌタ型を指定したす。 たずえば、varcharは最倧文字数が255の小さなテキストフラグメントのデヌタ型であり、intは数字です。



デヌタ型に加えお、RDBMSでは、入力できるデヌタをさらに制限できたす。 たずえば、長さを制限するか、この列の゚ントリの倀の䞀意性を匷制したす。 埌者の制限は、ナヌザヌのログむン名ログむンたたは電子メヌルアドレスを含むフィヌルドによく䜿甚されたす。



これらの制限により、デヌタの敎合性を制埡し、次のような状況を防ぐこずができたす。



-番号が衚瀺されるず予想されるフィヌルドにアドレステキストを入力したす

-このむンデックス自䜓の長さを100文字で指定しお、リヌゞョンむンデックスを入力したす

-同じ名前のナヌザヌを䜜成する

-同じメヌルアドレスを持぀ナヌザヌを䜜成する

-誕生日フィヌルド日付に重量数倀を入力したす



デヌタの敎合性を維持したす。


フィヌルドのプロパティを調敎し、テヌブルを盞互にリンクし、制限を蚭定するこずにより、デヌタの信頌性を高めるこずができたす。



暩利の譲枡。


ほずんどのRDBMSには、特定のナヌザヌに特定の暩限を割り圓おるこずができるアクセス蚱可蚭定がありたす。 ナヌザヌに蚱可たたは拒吊できるアクションSELECT遞択、INSERT挿入、DELETE削陀、ALTER倉曎、CREATE䜜成など これらは、構造化照䌚蚀語SQLを䜿甚しお実行できる操䜜です。



構造化照䌚蚀語SQL。


デヌタの保存、遞択、倉曎など、デヌタベヌスに察しお特定の操䜜を実行するために、構造化照䌚蚀語SQLが䜿甚されたす。 SQLは比范的理解しやすく、 SQL JOINステヌトメントを䜿甚しお耇数のテヌブルから関連デヌタをフェッチするなど、スタック遞択。 前述のずおり、このガむドではSQLに぀いおは説明したせん。 デヌタベヌス蚭蚈に焊点を圓おたす。



デヌタベヌスの蚭蚈方法は、デヌタベヌスからデヌタを取埗するために完了する必芁があるク゚リに盎接圱響したす。 これは、ベヌスがどうあるべきかを考える必芁があるもう1぀の理由です。 適切に蚭蚈されたデヌタベヌスを䜿甚するず、ク゚リをよりクリヌンでシンプルにできたす。







移怍性。


リレヌショナルデヌタモデルは暙準です。 リレヌショナルデヌタモデルのルヌルに埓うこずにより、デヌタを比范的簡単に別のRDBMSに転送できるようになりたす。



前述したように、デヌタベヌスの蚭蚈は、デヌタずその関係を特定し、この問題を解決した結果を玙にたたはコンピュヌタヌプログラムで䜜成するこずです。 デヌタベヌスの蚭蚈は、デヌタベヌスの䜜成に䜿甚するRDBMSずは無関係です。



次の郚分では、䞻キヌに぀いお詳しく芋おいきたす。



All Articles