MySQL データベースの一般的な基本操作の分析 [データベースの作成、表示、変更、削除]

MySQL データベースの一般的な基本操作の分析 [データベースの作成、表示、変更、削除]

この記事では、例を使用して、MySQL データベースの一般的な基本操作について説明します。ご参考までに、詳細は以下の通りです。

このセクションに関連するもの:

  • データベースを作成する
  • データベースを表示
  • データベースを変更する
  • データベースの削除

初回公開日時: 2018-02-13 20:47

改訂:

  1. 2018-04-07: 正規化を考慮して、構文内のすべての「キーワード」を大文字に変更しました。また、「MySQL Learning Road」の整理により、文字セットと照合セットの問題が削除され、新しいブログ投稿に掲載されました。

データベースを作成します。

文法 :

CREATE DATABASE データベース名 [データベース オプション];

ライブラリオプションの説明:

  • library オプションはオプションであり、省略できます。グローバリゼーションとローカリゼーションを考慮しない場合 (たとえば、中国語互換性を考慮する場合)、library オプションなしでコマンドを直接使用できます。 image
  • ライブラリ オプションには、文字セットと照合セットの 2 つがあります。 また、照合セットは通常、文字セットと一緒に使用されるため、照合を詳細に設定しない場合は、照合セットの設定を無視できます。
  • データベース オプションの文字セットは、データベースがデータを認識または保存するために使用する文字セットです。一般的に使用される文字セットは utf8 と gbk です。
  • ライブラリ オプションの照合セットは、データベースがデータを照合するときに使用する照合セットです [データは照合セットのルールに従って照合されます。たとえば、一部の照合セットでは大文字と小文字が区別されません]。
  • データベースの作成時にライブラリ オプションを指定しない場合は、デフォルトのライブラリ オプションが使用されます。

使用例:

school_infoデータベースを作成します。
データベース mydatabase を作成します。CHARSET utf8;

追加メモ:

  • 【このサービスの利用はお勧めできません。理由もなくトラブルを起こさないでください。 。 】データベース名には、database、delete などのキーワードや予約語は使用できません。構文が正しいのに作成に失敗する場合は、キーワードや予約語が使用されている可能性があります。キーワードや予約語を使用する必要がある場合は、` (TAB の上にあるキー) を使用してデータベース名を囲む必要がありますが、削除するときにも ` を追加する必要があります。

image

image

  • データベース名が中国語なので作成できません:
    • この問題は、クライアントとサーバー間の文字セットの一致の問題によって発生します。たとえば、サーバーはクライアントの文字セットが UTF8 (中国語の文字は 3 バイト) であると認識しますが、クライアントの文字セットは gbk (中国語の文字は 2 バイト) であると認識します。解決策は、サーバーが受け入れる文字セットをクライアントと同じ文字セットにすることです。
  • もう 1 つの問題は、サーバーが中国語を受信して​​クライアントに送信する際の表示の問題です。サーバーがクライアントに送信する際に使用する文字セットがクライアントの文字セットと同じである必要があります (クライアントが gbk で、サーバーが utf8 中国語を送信すると、クライアントにエラーが表示されます)。
    • 変更方法 1: クライアントが使用する文字セットの名前を設定します。[set names utf8 を実行して、3 つのパラメータ character_set_client、character_set_connection、character_set_results の値を utf8 に設定します]
    • 変更方法2: クライアントと結果の文字セットを一つずつ設定します。

image


データベースを表示します:

  • 既存のデータベースまたはデータベースの作成ステートメントを表示できます。
  • データベース作成ステートメントは、サーバーがこのデータベースを作成するために使用するすべてのステートメントです(たとえば、サーバーはデータベースの文字セットを構成します)。

文法:

-- すべてのデータベースを表示する SHOW DATABASES;

-- 条件を満たすデータベースを表示します。SHOW DATABASES LIKE 'fuzzy matching';

-- データベース作成ステートメントを表示します。
SHOW CREATE DATABASE データベース名;

あいまい一致:

あいまい一致では、ワイルドカードを使用してあいまい検索を実行します。

  • % は複数の任意の文字に一致することを表します。たとえば、%student は Astudent、ABCstudent、456student を検索します。
  • _ は任意の 1 文字に一致することを表します。たとえば、_student は Astudent、Cstudent、6student を検索します。
  • _ または % もデータベース名に含まれる文字である場合は、エスケープ文字 \ を使用する必要があります。そうでない場合、_ と % はワイルドカードと見なされます。
    • たとえば、database_student を検索する場合は、database\_%; を使用する必要があります。そうしないと、database_ のない databasedemo などのデータベースが見つかる可能性があります。

使用例:

データベースを表示;
'my%' のようなデータベースを表示します。
'my_'のようなデータベースを表示します。
SHOW CREATE DATABASE mydatabase;

データベースを変更します。

  • データベースの変更により、データベースライブラリのオプション(文字セットと照合セット)を変更できます。

文法:

データベースデータベース名を変更します[ライブラリオプション]。

使用例:

ALTER DATABASE mydatabase CHARSET utf8;
ALTER DATABASE mydatabase CHARACTER SET utf8;
ALTER DATABASE mydatabase CHARACTER SET = utf8;

追加メモ:

  • 照合セットは文字セットに依存します。通常、文字セットのみを変更すると、照合セットも変更されます。照合セットのみを変更すると、文字セットも変更されます。
  • 変更された照合が同じ文字セットに依存する場合、文字セットは変更されません。
  • 文字セットと照合セットの問題については、別のブログ投稿で説明します。

データベースを削除します。

データベースを削除すると、データベース全体とそこに含まれるすべてのデータが削除されます。削除されたデータは復元できません。データベースの削除はリスクが伴うため、実行する場合は注意してください。

文法:

DROP DATABASE データベース名;

使用例:

-- データベース mydatabase を削除します
データベース mydatabase を削除します。

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

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

以下もご興味があるかもしれません:
  • MySQL で大量のデータ (数千万) を素早く削除するためのいくつかの実用的なソリューションの詳細な説明
  • MySQL の重複データの処理方法 (防止と削除)
  • MySQL データベース操作 (作成、選択、削除)
  • MySQLはmysqldump+binlogを使用して、削除されたデータベースの原理分析を完全に復元します。
  • Linux は MySQL データベースのスケジュールされたバックアップを実装し、30 日以上前のバックアップ ファイルを削除します。
  • Linux は定期的に MySQL データベースをバックアップし、以前のバックアップ ファイルを削除します (推奨)
  • MySQL データを誤って削除した場合の簡単な解決策 (MySQL フラッシュバック ツール)
  • MySQL で期限切れのデータレコードを定期的に削除する簡単な方法
  • MySQL バイナリログデータ復旧: 誤ってデータベースを削除した場合の詳細な説明
  • データベースを削除せずにMySQLのすべてのテーブルを素早く削除する方法
  • MySQLデータベースを削除する2つの方法
  • MySQL でデータを削除してもテーブル ファイルのサイズが変更されないのはなぜですか?

<<:  Windows Server 2012 リモート デスクトップ ライセンス サーバーがライセンスを提供できず、リモート セッションが切断される

>>:  Vue で Openlayer を使用して読み込みアニメーション効果を実現する

推薦する

Manjaro インストール CUDA 実装チュートリアル分析

昨年末、Thinkpad T450 のデュアルシステムの opensuse を Manjaro に置...

Jenkins の docker-compose デプロイメントと構成に関する詳細なチュートリアル

Docker-compose デプロイメント構成 Jenkins 1. Docker-compose...

PrometheusとGrafanaを使用したMySQLサーバーのパフォーマンス監視の詳細な説明

概要Prometheus は、HTTP プロトコルを介してリモート マシンからデータを収集し、ローカ...

WeChat アプレットのカスタム タブバー コンポーネント

この記事では、WeChatアプレットのカスタムタブバーコンポーネントの具体的なコードを参考までに紹介...

MySql の集計関数に条件式を追加する方法

MySQL のフィルタリングのタイミングは、集計関数で使用される where 条件と having ...

H5 WeChatパブリックアカウント認証を実装するための簡単な手順

序文昨日、h5 WeChat認証の実装が必要なプロジェクトがありました。したがって、この機能を完了す...

Vueにおける混合継承の詳細な説明

目次混合継承の影響: 1. 継承Vue.extend メソッド​プロパティを拡張する2. ミックスイ...

JavaScript 改ざん防止オブジェクトの使用例

目次JavaScript 改ざん防止オブジェクト1. 拡張不可能なオブジェクト2. 封印された物体3...

react+antd.3x は IP 入力ボックスを実装します

この記事では、IP入力ボックスを実装するための react+antd.3x の具体的なコードを参考ま...

MYSQLクエリデータの結果に自動的に番号を付ける方法

序文実際、クエリ中に結果に番号が付けられるこのような状況に遭遇したことは一度もありません。同僚が転職...

MySQL遅延スレーブを導入するメリットのまとめ

序文MySQL のマスター/スレーブ レプリケーション関係は、厳密には「同期」または「マスター/スレ...

MySQL 文字セットの概要

目次文字セット比較ルール4つのレベルの文字セットと比較規則3つのシステム変数このノートは主にMySQ...

Windows に WSL をインストールして構成する方法

WSLとはBaidu 百科事典からの一節を引用します。 Windows Subsystem for ...

MySQL 最適化の概要 - クエリエントリの合計数

1. COUNT(*) と COUNT(COL) COUNT(*)は通常、主キーに対してインデックス...

両端の CSS レイアウトのサンプルコード (親の負のマージンを使用)

最近、開発中に両端が揃ったレイアウトに遭遇しました。レイアウトはパーセンテージに基づいていました。以...