MySQLスタディノート05 [マルチテーブル操作、3つのパラダイム、データベースのバックアップと復元]

  • MySQLドキュメント-DarkHorse Programmer(Tencent Weiyun):https//share.weiyun.com/RaCdIwas
  • 1-MySQL Foundation.pdf、2-MySQL制約とdesign.pdf、3-MySQLマルチテーブルクエリとトランザクションoperation.pdf
  1. MySQL研究ノート01 [データベースの概念、MySQLのインストールと使用] [day01]
  2. MySQLスタディノート02 [SQLの基本概念と一般的な文法、データベースのCRUD操作] [day01]
  3. MySQLスタディノート03 [データベーステーブルのCRUD操作、データベーステーブルに記録された基本操作、クライアント側のグラフィカルインターフェイスツールSQLyog] [day01]

  4. MySQLスタディノート04 [データベースクエリ操作、テーブル制約] [day01、day02]

  5. MySQLスタディノート05 [マルチテーブル操作、3つのパラダイム、データベースのバックアップと復元] [day02]

  6. MySQLスタディノート06 [マルチテーブルクエリ、サブクエリ、マルチテーブルクエリの演習] [day03]

  7. MySQLスタディノート07 [トランザクション、ユーザー管理、および権限管理] [day03]

目次

09マルチテーブル操作

マルチテーブル関係の概要

マルチテーブル関係_1対多の関係の実装

マルチテーブルrelationship_many-to-many関係の実現

マルチテーブル関係_1対1の関係の実現

マルチテーブルrelationship_case

103つのパラダイム

パラダイムの概要

3つのパラダイムの詳細な説明

11データベースのバックアップと復元

コマンドライン

グラフィカルツール


09マルチテーブル操作

マルチテーブル関係の概要

データベース設計-1。複数のテーブル間の関係

1.分類:
    1。1対1(理解):
        *例:人とIDカード
        *分析:人は1つのIDしか持っておらず、1つのIDは1人の人にしか対応できません。
    2. 1対多(多対1):
        *例:部門と従業員
        *分析:1つの部門に複数の従業員がいて、1人の従業員は1つの部門にしか対応できません。
    3.多対多:
        *例:学生とコース
        *分析:学生は多くのコースを選択でき、コースは多くの学生が選択できます。

マルチテーブル関係_1対多の関係の実装

データベース設計-1。複数のテーブル間の関係

1.分類:
    1。1対1(理解):
        *例:人とIDカード
        *分析:人は1つのIDしか持っておらず、1つのIDは1人の人にしか対応できません。
    2. 1対多(多対1):
        *例:部門と従業員
        *分析:1つの部門に複数の従業員がいて、1人の従業員は1つの部門にしか対応できません。
    3.多対多:
        *例:学生とコース
        *分析:学生は多くのコースを選択でき、コースは多くの学生が選択できます。

    2.関係を実現し
        ます。1。1対多(多対1):
            *例:部門および従業員
            *実装方法:複数側で外部キーを確立し、一方側で主キーをポイントします。 。

マルチテーブルrelationship_many-to-many関係の実現

    2.関係を実現し
        ます。1。1対多(多対1):
            *例:部門と従業員
            *実装方法:一方の主キーを指す、複数の側に外部キーを確立します。 。
        2.多対多:
            *例:学生とコース
            *実装モード:多対多の関係を実現するには、3番目の中間テーブルを使用する必要があります。中間テーブルには少なくとも2つのフィールドが含まれています。これらの2つのフィールドは、3番目のテーブルの外部キーとして使用され、それぞれ2つのテーブルの主キーを指します。
        3. 1対1(理解):
            *例:個人とIDカード
            *実装:1対1の関係が実現され、一意の外部キーを両側に追加して、の主キーを指すことができます。向こう側。

マルチテーブル関係_1対1の関係の実現

    2.関係を実現し
        ます。1。1対多(多対1):
            *例:部門と従業員
            *実装方法:一方の主キーを指す、複数の側に外部キーを確立します。 。
        2.多対多:
            *例:学生とコース
            *実装モード:多対多の関係を実現するには、3番目の中間テーブルを使用する必要があります。中間テーブルには少なくとも2つのフィールドが含まれています。これらの2つのフィールドは、3番目のテーブルの外部キーとして使用され、それぞれ2つのテーブルの主キーを指します。
        3. 1対1(理解):
            *例:個人とIDカード
            *実装:1対1の関係が実現され、一意の外部キーを両側に追加して、の主キーを指すことができます。向こう側。

マルチテーブルrelationship_case

-- 创建旅游线路分类表 tab_category
-- cid 旅游线路分类主键,自动增长
-- cname 旅游线路分类名称非空,唯一,字符串 100
CREATE TABLE tab_category (
  cid INT PRIMARY KEY AUTO_INCREMENT,
  cname VARCHAR (100) NOT NULL UNIQUE
) ;

-- 创建旅游线路表 tab_route
/*
rid 旅游线路主键,自动增长
rname 旅游线路名称非空,唯一,字符串 100
price 价格
rdate 上架时间,日期类型
cid 外键,所属分类
*/
CREATE TABLE tab_route (
  rid INT PRIMARY KEY AUTO_INCREMENT,
  rname VARCHAR (100) NOT NULL UNIQUE,
  price DOUBLE,
  rdate DATE,
  cid INT,
  FOREIGN KEY (cid) REFERENCES tab_category (cid)
) ;

/*创建用户表 tab_user
uid 用户主键,自增长
username 用户名长度 100,唯一,非空
password 密码长度 30,非空
name 真实姓名长度 100
birthday 生日
sex 性别,定长字符串 1
telephone 手机号,字符串 11
email 邮箱,字符串长度 100
*/
CREATE TABLE tab_user (
  uid INT PRIMARY KEY AUTO_INCREMENT,
  username VARCHAR (100) UNIQUE NOT NULL,
  PASSWORD VARCHAR (30) NOT NULL,
  NAME VARCHAR (100),
  birthday DATE,
  sex CHAR(1) DEFAULT '男',
  telephone VARCHAR (11),
  email VARCHAR (100)
) ;

/*
创建收藏表 tab_favorite
rid 旅游线路 id,外键
date 收藏时间
uid 用户 id,外键
rid 和 uid 不能重复,设置复合主键,同一个用户不能收藏同一个线路两次
*/
CREATE TABLE tab_favorite (
  rid INT, -- 线路id
  DATE DATETIME,
  uid INT,
  -- 用户id
  -- 创建复合主键
  PRIMARY KEY (rid, uid),
  -- 联合主键
  FOREIGN KEY (rid) REFERENCES tab_route (rid),
  FOREIGN KEY (uid) REFERENCES tab_user (uid)
) ;

103つのパラダイム

パラダイムの概要

2.データベース設計のパラダイム

    *概念:データベースを設計する際に従う必要のあるいくつかの仕様。背後にあるパラダイム要件に従うには、最初に前面にあるすべてのパラダイム要件に従う必要があります。

        リレーショナルデータベースを設計するときは、さまざまな仕様に従って合理的なリレーショナルデータベースを設計する必要があります。これらのさまざまな仕様はさまざまなパラダイムと呼ばれます。さまざまなパラダイムが標準以下で提示されます。パラダイムが高いほど、データベースの冗長性は低くなります。

        現在、リレーショナルデータベースには6つのパラダイムがあります。第1正規形(1NF)、第2正規形(2NF)、第3正規形(3NF)、バスコード正規形(BCNF)、第4正規形(4NF)、第5正規形( 5NF、完全なパラダイムとしても知られています)。

    *分類:
        1。第一正規形(1NF):各列は分割できない原子データ項目です。
        2.第2正規形(2NF):1NFに基づいて、非コード属性はコードに完全に依存する必要があります(1NFに基づいて、メインコードへの非プライマリ属性の部​​分的な機能依存性が排除されます)。
        3.第3正規形(3NF):2NFに基づいて、非プライマリ属性は他の非プライマリ属性に依存しません(2NFに基づいて推移的な依存を排除​​します)。

3つのパラダイムの詳細な説明

2.データベース設計のパラダイム

    *概念:データベースを設計する際に従う必要のあるいくつかの仕様。背後にあるパラダイム要件に従うには、最初に前面にあるすべてのパラダイム要件に従う必要があります。

        リレーショナルデータベースを設計するときは、さまざまな仕様に従って合理的なリレーショナルデータベースを設計する必要があります。これらのさまざまな仕様はさまざまなパラダイムと呼ばれます。さまざまなパラダイムが標準以下で提示されます。パラダイムが高いほど、データベースの冗長性は低くなります。

        現在、リレーショナルデータベースには6つのパラダイムがあります。第1正規形(1NF)、第2正規形(2NF)、第3正規形(3NF)、バスコード正規形(BCNF)、第4正規形(4NF)、第5正規形( 5NF、完全なパラダイムとしても知られています)。

    *分類:
        1。第一正規形(1NF):各列は分割できない原子データ項目です。
        2.第2正規形(2NF):1NFに基づいて、非コード属性はコードに完全に依存する必要があります(1NFに基づいて、メインコードへの非プライマリ属性の部​​分的な機能依存性が排除されます)。

            *いくつかの概念:
                1。機能依存性:A-> B.属性A(属性グループ)の値を使用して一意の属性Bの値を決定できる場合、BはAに依存します。
                    例:学生ID->名前。(学生番号、コース名)->スコア
                2.完全な関数従属性:A-> B. Aが属性グループの場合、Bの属性値の決定は、属性内のすべての属性値に依存する必要がありますグループA。
                    例:(学生ID、コース名)->スコア
                3。部分的な関数従属性:A-> B、Aが属性グループの場合、Bの属性値の決定はいくつかの値にのみ依存する必要があります。属性グループA、つまりできます。
                    例:(学生ID、コース名)->名前
                4.伝達関数の依存関係:A-> B、B-> C。属性A(属性グループ)の値を使用して一意のB属性の値を決定でき、属性B(属性グループ)の値を使用して一意のC属性の値を決定できる場合、 C伝達関数はAに依存すると言われています。
                    例:学生ID->部門名、部門名->部門ディレクター
                5.コード:属性または属性グループがテーブル内の他のすべての属性に完全に依存している場合、この属性(属性グループ)はTheと呼ばれます。テーブルのコード。
                    例:表のコードは次のとおりです:(学生ID、コース名)
                    *プライマリ属性:
                    コード属性グループ内のすべての属性*非プライマリ属性:コード属性グループを除く属性
        3.第3正規形(3NF):2NFに基づいて、非プライマリ属性は他の非プライマリ属性に依存しません(2NFに基づいて推移的な依存を排除​​します)。

  

11データベースのバックアップと復元

1.コマンドライン:
    *構文:
        *バックアップ:mysqldump -u username -p passwordデータベース名>保存されたパス
        *復元:
            1。データベースにログインします
            2.データベースを作成します
            3.データベースを使用します
            4.ファイルを実行します。ソースファイルパス
2。グラフィカルツール

コマンドライン

  

  

グラフィカルツール

  

    

おすすめ

転載: blog.csdn.net/weixin_44949135/article/details/113660255