はじめに
MySQLは、よく知られている無料のオープンソースデータベースアプリケーションです。その高性能、使いやすさ、およびデータセキュリティにより、人気のあるデータベースソリューションになっています。
MySQLで最も重要なプロセスの1つは、データを保存および整理するためのテーブルを作成することです。
このガイドでは、MySQLでテーブルを作成してデータを挿入する方法と、データをクエリするさまざまな方法を学習します。
前提条件
- ターミナルウィンドウ/コマンドラインへのアクセス
- MySQLを実行しているシステム(MySQLのバージョンを確認する方法を学ぶ)
- rootまたはadmin権限を持つMySQLユーザーアカウント
MySQLシェルでテーブルを作成する
MySQLテーブルは、テーブルの作成時に定義されたように、データを列と行に格納および整理します。
MySQLでテーブルを作成するための一般的な構文は次のとおりです。
CREATE TABLE [IF NOT EXISTS] table_name(
column_definition1,
column_definition2,
........,
table_constraints
);
ステップ1:MySQLシェルにログインします
1.ターミナルウィンドウを開き、MySQLシェルにログインします。既存のMySQLユーザーアカウントを使用するか、rootとしてログインします。
( username\root
を置き換えます あなたのユーザー名で。 )
sudo mysql -u username\root -p
2.アカウントのパスワードを入力します。
mysql>
プロンプトは、MySQLシェルにログインしていることを示します。
ステップ2:データベースを作成する
映画を作成しましょう データベース。
1. CREATE
を使用してデータベースを作成します ステートメント:
CREATE DATABASE movies;
2.次に、すべてのデータベースのリストを表示して、データベースが作成されたことを確認します。 SHOW
を使用する ステートメント:
SHOW DATABASES;
ターミナルは、データベースのリストとクエリの実行にかかった時間に関する情報を出力します。
3. USE
を使用して、データベースを選択して変更します ステートメント:
USE movies;
ステップ3:テーブルを作成する
2つの映画に関する情報を含むテーブルを作成します。
タイトル | ジャンル | ディレクター | リリース年 |
ジョーカー | サイコスリラー | トッドフィリップス | 2019 |
帝国の逆襲 | エピックスペースオペラ | アーヴィン・カーシュナー | 1980 |
テーブルを作成するプロセスでは、次の情報を指定する必要があります。
- 列名 –タイトルを作成しています 、ジャンル 、ディレクター 、およびリリース年 テーブルの列。
- 文字を含む列の変数 –列に格納される最大文字数を指定します。
- 数値を含む列の整数 –整数を保持する数値変数を定義します。
- ヌルではないルール –新しい各レコードに列の情報が含まれている必要があることを示します。
- 主キー –レコードを定義する列を設定します。
1. CREATE
を使用してテーブルを作成します 指図。 映画の情報を使用する たとえば、コマンドは次のとおりです。
CREATE TABLE movies(title VARCHAR(50) NOT NULL,genre VARCHAR(30) NOT NULL,director VARCHAR(60) NOT NULL,release_year INT NOT NULL,PRIMARY KEY(title));
2. DESCRIBE
を使用してテーブルが作成されていることを確認します コマンド:
DESCRIBE movies;
端末はテーブルに関する情報を出力します:
- フィールド –列名を示します。
- タイプ –列のデータ型を指定します(文字の場合はvarchar、数値の場合はint)。
- ヌル –列をnull値のままにできるかどうかを示します。
- キー –プライマリ列を表示します。
- デフォルト –列のデフォルト値を表示します。
- 追加 –列に関する追加情報を示します。
3.映画情報を列順に挿入します–タイトル 、ジャンル 、ディレクター 、およびリリース年 。 INSERT
を使用します コマンド:
INSERT INTO movies VALUE ("Joker", "psychological thriller", "Todd Phillips", 2019);
4.2番目のムービーで前の手順を繰り返します。 SELECT
を使用します テーブルを表示するコマンド:
SELECT * FROM movies;
ターミナルは映画を印刷します テーブル:
ファイルスクリプトを使用してテーブルを作成する
スクリプトを使用してMySQLテーブルを作成するオプションがあります。
1.好みのテキストエディタを使用してファイルを作成し、次の構文を入力します。
CREATE DATABASE movies1;
USE movies1;
CREATE TABLE movies1(title VARCHAR(50) NOT NULL,genre VARCHAR(30) NOT NULL,director VARCHAR(60) NOT NULL,release_year INT NOT NULL,PRIMARY KEY(title));
INSERT INTO movies1 VALUE ("Joker", "psychological thriller", "Todd Phillips", 2019);
2.構文を入力したら、ファイルを保存してテキストエディタを終了します。
3.次のコマンドを使用して、ファイルをMySQLにコピーします。
sudo mysql -u root -p < movies1.sql/code>
スクリプトはコピー後に自動的に実行されます。この例では、 movies1.sqlからのデータを使用してテーブルを作成します ファイル。
4. MySQLシェルにログインします:
5.新しく作成したテーブルを選択して、スクリプトが正常に実行されたことを確認します。
SHOW DATABASES;
USE movies1;
SELECT * FROM movies1;
MySQLデータのクエリ
MySQLテーブルからデータをクエリするためのいくつかのオプションがあります。 SELECT
を使用する およびVIEW
ステートメントを使用すると、データを効率的に操作および検索できます。
列データの表示
SELECT
を使用して列データを表示します コマンド:
SELECT title FROM movies;
出力には、選択した列とそれに関連付けられたデータが表示されます。
ビューを作成する
ビューは、定義されたパラメータに基づいてデータを表示するSQLクエリです。
1. minimum_release_yearという名前のビューを作成します リリース年が1990年以降の映画タイトルを表示します。CREATE VIEW
を使用します コマンドとクエリパラメータの定義:
CREATE VIEW minimum_release_year AS SELECT title FROM movies WHERE release_year > 1990;
2. SELECT
を使用してビューを表示します コマンド:
SELECT * FROM minimum_release_year;
出力には、1990年以降にリリースされた映画が表示されます。
ビューを変更する
ALTER VIEW
MySQLステートメントは、以前に作成されたビューのクエリパラメータを変更します。たとえば、 minimum_release_yearを変更します 2018年より前に公開された映画のタイトルを表示するために表示します。
1.これを行うには、 ALTER VIEW
を実行します 新しいパラメータを使用したコマンド:
ALTER VIEW minimum_release_year AS SELECT title FROM movies WHERE release_year < 2018;
2. SELECT
を使用します ビューが変更されたことを確認するコマンド:
SELECT * FROM minimum_release_year;
出力には、2018年より前にリリースされた映画が表示されるようになりました。