MySqlデータベースの基礎知識のまとめ

MySqlデータベースの基礎知識のまとめ

この記事では、例を使用して、MySql データベースの基本的な知識ポイントを説明します。ご参考までに、詳細は以下の通りです。

  • 基本的なデータベース操作

    1) データベースを作成する

    基本構文: create database數據庫名稱;
    itcast という名前のデータベースを作成します。 SQL 構文は次のとおりです。

     「データベース `itcast` を作成します;」
    

    ユーザー定義名とシステム コマンドの競合を回避するには、データベース名/フィールド名とデータ テーブル名を含めるときにバッククォート (``) を使用するのが最善です。 <br /> 作成中のデータベースが存在する場合、プログラムはエラーを報告します。これを防ぐには、データベースの作成時に「if not exists」を使用できます。構文は次のとおりです。

    データベースが存在しない場合は再作成する `itcast` 
    // このステートメントは、itcast という名前のデータベースがデータベースに存在しない場合は、データベースが作成されることを意味します。それ以外の場合は、データベース itcast を作成する操作は実行されません。

    2) データベースを表示する

    データベースを作成した後、データベース情報を表示したい場合は、次のステートメントを使用できます。

     ``show caeate database データベース名``
    

    MySqlデータベースサーバー上の既存のデータベースを表示する

     「データベースを表示」
    

    3) データベースを選択する

    データベース サーバーには複数のデータベースが存在する場合があります。データベースを選択するためのコマンド構文は次のとおりです。

     「データベース名を使用する」
    

    4) データベースを削除する

    データベースの削除操作では、データベース内のデータが削除されるだけでなく、元々割り当てられていたストレージ領域も再利用されます。

     ``データベースデータベース名を削除``
    

    「drop database」コマンドを使用してデータベースを削除する場合、削除されたデータベースが存在しない場合は、MySql サーバーはエラーを報告します。したがって、データベースを削除するときは、「if existing」コマンドを使用できます。

     ``存在する場合はデータベースを削除する `itcase` 
     // データベース itcase が MySql データベース サーバーに存在する場合はデータベースを削除します。存在しない場合はデータベース itcasse を削除しません。
    
  • データ型

データ テーブルを作成するときは、各フィールドのデータ型を選択する必要があります。データ型の選択によって、データの保存形式、有効範囲、および対応する制限が決まります。

MySQLはさまざまなデータ型を提供しており、主に3つのカテゴリに分類されます。

  • 数値型

  • 文字列型

  • 日付と時刻の種類

    1) 数値型

    MySql は多くの数値型を提供しており、大まかに整数型と浮動小数点型に分けられます。整数型は値の範囲に応じて int や smallint などに分けられます。
    浮動小数点型は float、declmal などに分けられます。

    整数型
    ここに画像の説明を挿入

    浮動小数点型
    ここに画像の説明を挿入

    10 進数の有効な値の範囲は、M と D によって決まります。その中で、MとDが決定します。このうち、M はデータ長、D は小数点以下の長さを表します。たとえば、データ型が DECIMAL(4,1) に設定されている場合、データベースに 3.1415926 を挿入すると、表示される結果は 3.1 になります。

    文字列型

    プロジェクトを開発する場合、保存する必要があるデータのほとんどは文字列形式であるため、MySQL では文字列を保存するための多くのデータ型が提供されています。
    ここに画像の説明を挿入
    ここに画像の説明を挿入
    BLOB と TEXT はどちらも大量のデータを保存するために使用されますが、両者の違いは、BLOB は保存されたデータの並べ替えや比較の際に大文字と小文字を区別するのに対し、TEXT は大文字と小文字を区別しないことです。

    日付と時刻の型<br /> データベースに日付と時刻を保存しやすくするために、MySQL ではいくつかの関連データ型が提供されており、実際の開発に応じて柔軟に選択できます。
    ここに画像の説明を挿入

2) ストレージタイプ

データベースでは、データ テーブル設計の合理性がデータベースの有効性に直接影響し、データ テーブルを設計する際のストレージ エンジンの選択によって、データ テーブルが持つ機能が決まります。次に、よく使われるMySQLストレージエンジンとその機能を紹介します。

  • InnoDB ストレージ エンジン

  • MyISAM ストレージエンジン

  • メモリストレージエンジン

  • アーカイブストレージエンジン

    InnoDB エンジン

    InnoDB ストレージ エンジンは、MySQL バージョン 5.5 以降、デフォルトのストレージ エンジンとして指定されており、トランザクションのトランザクション安全処理、ロールバック、クラッシュ回復、およびマルチバージョン同時実行制御を完了するために使用されます。また、これは MySQL で初めて外部キー制約を提供するテーブル エンジンでもあり、特にそのトランザクション処理機能は他の MySQL ストレージ エンジンとは比べものにならないほど優れています。

    InnoDB の利点は、優れたトランザクション管理、クラッシュ回復機能、同時実行制御を提供することです。

    MyISAM ストレージエンジン

    MyISAM ストレージ エンジンは、ISAM ストレージ エンジンに基づいて開発されています。ISAM の多くの欠点を解決するだけでなく、多くの便利な拡張機能も追加されています。

    このうち、MyISAM ストレージエンジンを使用するデータテーブルの場合は、3 つのファイルに保存されます。ファイル名はテーブル名と同じで、ファイル拡張子はそれぞれ frm、myd、myi です。
    ここに画像の説明を挿入
    InnoDBと比較した場合、MyISAMの利点は処理速度が速いことであり、欠点はトランザクション処理などをサポートしていないことです。

    メモリストレージエンジン

    MEMORY ストレージ エンジンは、MySQL の特別なタイプのストレージ エンジンです。 MEMORY ストレージ エンジンを搭載したテーブルでは、すべてのデータがメモリに格納されるため、データ処理は高速ですが、データを永続化できない (プログラム エラーが発生したり、コンピューターがシャットダウンしたりするとデータが失われる) ほか、大きすぎるデータは格納できません。 MEMORY ストレージ エンジンは、高速な読み取りおよび書き込み速度が求められるものの、データ量が少なく、永続化する必要がないデータに最適です。

    アーカイブ保存タイプ

    ARCHIVE ストレージ エンジンは、長期間保持されるがほとんどアクセスされない大量のデータを保存するのに適しています。 ARCHIVE ストレージ エンジンを使用するデータ テーブルの場合、データは保存時に zlib 圧縮ライブラリを使用して圧縮され、レコードが要求されるとリアルタイムで解凍されます。 ARCHIVE ストレージ エンジンはクエリと挿入操作のみをサポートしており、データのインデックス作成をサポートしていないため、クエリの効率が比較的低いことに注意してください。

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQLを学んだ後のまとめ(基礎編)
  • MySQLの基本を素早く学ぶ
  • MySQL データベースの基本コマンド (コレクション)
  • MySQL入門(I)データテーブルとデータベースの基本操作
  • 初心者向けMySQLシリーズチュートリアル

<<:  React NativeのstartReactApplicationメソッドの簡単な分析

>>:  Linux inotifyリアルタイムバックアップの実装方法の詳細説明

推薦する

MySQL バッチ挿入とユニークインデックスの問題に対する解決策

MySQL バッチ挿入の問題プロジェクトを開発しているときに、古いシステムの基本データを事前にインポ...

IDEA の Docker プラグインを介して Springboot プロジェクトを公開する方法の詳細なチュートリアル

1. Dockerfileを書く(1)プロジェクト名を右クリックして新しいテキストファイルを作成し、...

InnoDBのインデックスページ構造、挿入バッファ、適応ハッシュインデックスについての簡単な説明

InnoDB インデックスの物理構造すべての InnoDB インデックスは Btree インデックス...

MySQL における ESCAPE キーワードの使用法の詳細な説明

MySQL エスケープエスケープとは、エスケープ文字の本来の意味を意味します。エスケープ文字の目的は...

Three.js が Facebook Metaverse 3D ダイナミック ロゴ効果を実現

目次背景メタバースとは何ですか?成果を達成するトライアル 1: THREE.TorusGeometr...

HTML テーブル タグ チュートリアル (31): セルの幅と高さの属性 WIDTH、HEIGHT

デフォルトでは、セルの幅と高さはコンテンツに応じて自動的に調整されますが、セルの幅と高さを手動で設定...

Dockerを使用してPythonランタイム環境の基本イメージを作成する方法

1. 準備1.1 Pythonインストールパッケージをダウンロードします(注:Pythonバージョン...

ウェブレスポンシブレイアウトにおけるiframe適応の方法

問題<br />レスポンシブ レイアウトでは、iframe 要素に注意する必要があります...

Dockerデータのバックアップとリカバリプロセスの詳細な説明

データのバックアップ操作は非常に簡単です。次のコマンドを実行します。 docker run --vo...

mysql5.7.22 ダウンロードプロセス図

1. 公式ウェブサイト www.mysql.com にアクセスし、ダウンロードを選択します。 2. ...

Centos7 で Java8 と MySQL をインストールしてデプロイする

通常、Java の学習とプロジェクトのデプロイはローカルで行われますが、実稼働環境は Linux 環...

Tomcat マルチレイヤーコンテナの設計に関する簡単な説明

目次コンテナ階層サーブレットの検索を要求するプロセス仕組みTomcat のコンテナは Servlet...

HTML と CSS の命名規則の概要

CSS命名規則 ヘッダー: ヘッダーコンテンツ: コンテンツ/含むフッターナビゲーション: navサ...

Linux で Bash コマンド プロンプトをカスタマイズする方法

序文ご存知のとおり、bash (Bourne-Gain Shell) は、ほとんどの Linux デ...

CSS で水平方向と垂直方向に中央揃えする 10 の方法を教えます (要約)

面接には必需品、仕事でも必ず使います。うーん、誰でも分かるでしょう。これ以上何も言わずに、要約とレン...