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リアルタイムバックアップの実装方法の詳細説明

推薦する

Dockerイメージ作成の完全なプロセス

目次序文作成手順CentOSベースイメージを作成するコンテナを作成してカスタマイズするカスタムコンテ...

Meituan DBデータをデータウェアハウスに同期するアーキテクチャと実践

背景データ ウェアハウス モデリングでは、何ら処理されていない元のビジネス レイヤー データは OD...

HTML iframe で親ページと子ページ間の双方向メッセージングを実装する例

ある日、リーダーはメイン ページに iframe を埋め込み、親ページと子ページ間で双方向にメッセー...

mysql ERROR 1045 (28000) 問題の解決方法

私はmysql ERROR 1045に遭遇し、この問題に長い時間を費やしました。私はそれを自分で書き...

Vueはシンプルなショッピングカートの例を実装します

この記事では、参考までに、Vue の具体的なコードを共有して、簡単なショッピングカートを実装します。...

Linux でジャンプ サーバー経由でリモート サーバーに接続し、ファイルを転送する方法

最近、Linux ホストに環境を展開する際に多くの問題に遭遇しました。最初の問題は、ジャンプ サーバ...

複数のフィールドを変更するためのMysql更新の構文の詳細な分析

MySQL でレコードを更新すると、構文は正しいのですが、レコードが更新されません...質問文実行前...

Maven プロジェクトのリモート デプロイメント && Tomcat を使用してデータベース接続を構成する方法

1つ。 tomcat を使用したリモート展開1.1 発生した問題:プロジェクトでは、サードパーティの...

リンク更新ページと js 更新ページの使用例

1. リンクの使用方法:コードをコピーコードは次のとおりです。 <a href="j...

マスタークラスタに再参加する k8s ノードの実装

1. ノードを削除するkubectl delete node node01を実行します。 2. この...

MySQL複合インデックスの概要

目次1. 背景2. 複合インデックスを理解する3. 左端一致原則4. フィールド順序の影響5. 単一...

Linux ディスク パーティションの実装の原理と方法の分析

覚えて: IDE ディスク: 最初のディスクは hda、2 番目のディスクは hdb...最初のディ...

JavaScriptはオブジェクトの不要なプロパティを削除します

目次例方法1: 削除方法2: 分解補充する要約するThinking シリーズは、10 分で実用的なプ...

MySQL内部一時テーブルの具体的な使用法

目次連合テーブルの初期化ステートメントの実行連合の結果ユニオンオールグループ化十分なメモリステートメ...

MySQL 5.7.17 圧縮バージョンのインストールノート

この記事では、参考までにMySQL 5.7.17圧縮版のインストール手順を紹介します。具体的な内容は...