ホームページ データベース mysql チュートリアル MySQL 演習 1: データ テーブルの基本操作

MySQL 演習 1: データ テーブルの基本操作

Mar 08, 2021 am 09:18 AM
データシート

MySQL 演習 1: データ テーブルの基本操作

テーブルの作成、さまざまな制約の追加、テーブル構造の生成、テーブルの変更と削除など、MySQL のさまざまな操作を学習している。実践的な演習を行い、データ テーブルの基本操作の基礎を包括的に確認します。


ケース: データベース会社を作成し、次の 2 つのテーブルに示されているテーブル構造に従って会社データベースにオフィスと従業員の 2 つのデータ テーブルを作成し、データの基本操作を完了します。操作プロセスに応じたテーブル。

# (無料学習の推奨事項: mysql ビデオ チュートリアル #)

##

操作过程如下:
ログイン後にコピー
MySQL 演習 1: データ テーブルの基本操作(1): MySQL にログインします。

mysql -h localhost -u root -p
ログイン後にコピー
Windows コマンド ラインを開き、ログイン ユーザー名とパスワードを入力します。

C:\Users\Hudie>mysql -h localhost -u root -p
Enter password: ********Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 19Server version: 8.0.16 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>_
ログイン後にコピー

ログインに成功すると、操作用の SQL ステートメントを入力できます。


(2): データベース会社を作成します。

create database company;
ログイン後にコピー
mysql> create database company;Query OK, 1 row affected (0.06 sec)
ログイン後にコピー
作成が成功したら、会社データベースにデータ テーブルを作成します。最初にデータベースを選択する必要があります。 SQL ステートメントは次のとおりです。

mysql> use company;Database changed
ログイン後にコピー


(3): テーブル オフィスを作成します。

create table offices
ログイン後にコピー
mysql> create table offices    -> (
    -> officeCode int(10) not null unique,
    -> city varchar(50) not null,
    -> address varchar(50) not null,
    -> country varchar(50) not null,
    -> postalCode varchar(15) not null,
    -> primary key (officeCode)
    -> );Query OK, 0 rows affected (0.14 sec)mysql> show tables;+-------------------+| Tables_in_company |+-------------------+| offices           |+-------------------+1 row in set (0.00 sec)
ログイン後にコピー

(4): テーブルemployeesを作成します。

create table employees
ログイン後にコピー
mysql> create table employees    -> (
    -> employeeNumber int(11) not null primary key auto_increment,
    -> lastNamee varchar(50) not null,
    -> firstName varchar(50) not null,
    -> mobile varchar(25) not null,
    -> officeCode int (10) not null,
    -> jobTitle varchar(50) not null,
    -> birth datetime,
    -> noth varchar(25),
    -> sex varchar(5),
    -> constraint office_fk foreign key(officeCode) references offices(officeCode)
    -> );Query OK, 0 rows affected (0.14 sec)mysql> show tables;+-------------------+| Tables_in_company |+-------------------+| employees         || offices           |+-------------------+2 rows in set (0.01 sec)
ログイン後にコピー
作成は成功しました。2 つのテーブルの構造を確認してください:

mysql> desc offices;+------------+-------------+------+-----+---------+-------+| Field      | Type        | Null | Key | Default | Extra |+------------+-------------+------+-----+---------+-------+| officeCode | int(10)     | NO   | PRI | NULL    |       || city       | varchar(50) | NO   |     | NULL    |       || address    | varchar(50) | NO   |     | NULL    |       || country    | varchar(50) | NO   |     | NULL    |       || postalCode | varchar(15) | NO   |     | NULL    |       |+------------+-------------+------+-----+---------+-------+5 rows in set (0.06 sec)mysql> desc employees;+----------------+-------------+------+-----+---------+----------------+| Field          | Type        | Null | Key | Default | Extra          |+----------------+-------------+------+-----+---------+----------------+| employeeNumber | int(11)     | NO   | PRI | NULL    | auto_increment || lastNamee      | varchar(50) | NO   |     | NULL    |                || firstName      | varchar(50) | NO   |     | NULL    |                || mobile         | varchar(25) | NO   |     | NULL    |                || officeCode     | int(10)     | NO   | MUL | NULL    |                || jobTitle       | varchar(50) | NO   |     | NULL    |                || birth          | datetime    | YES  |     | NULL    |                || noth           | varchar(25) | YES  |     | NULL    |                || sex            | varchar(5)  | YES  |     | NULL    |                |+----------------+-------------+------+-----+---------+----------------+9 rows in set (0.01 sec)
ログイン後にコピー


(5):employees テーブルの mobile フィールドを変更して、 officeCode フィールド。

alter table employees modify mobile varchar(25) after officeCode;
ログイン後にコピー
mysql> alter table employees modify mobile varchar(25) after officeCode;Query OK, 0 rows affected (0.18 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> desc employees;+----------------+-------------+------+-----+---------+----------------+| Field          | Type        | Null | Key | Default | Extra          |+----------------+-------------+------+-----+---------+----------------+| employeeNumber | int(11)     | NO   | PRI | NULL    | auto_increment || lastNamee      | varchar(50) | NO   |     | NULL    |                || firstName      | varchar(50) | NO   |     | NULL    |                || officeCode     | int(10)     | NO   | MUL | NULL    |                || mobile         | varchar(25) | YES  |     | NULL    |                || jobTitle       | varchar(50) | NO   |     | NULL    |                || birth          | datetime    | YES  |     | NULL    |                || noth           | varchar(25) | YES  |     | NULL    |                || sex            | varchar(5)  | YES  |     | NULL    |                |+----------------+-------------+------+-----+---------+----------------+9 rows in set (0.01 sec)
ログイン後にコピー


(6): テーブルemployeesのbirthフィールドの名前をemployee_birthに変更します。

alter table employees change birth employee_birth datetime;
ログイン後にコピー
mysql> alter table employees change birth employee_birth datetime;Query OK, 0 rows affected (0.03 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> desc employees;+----------------+-------------+------+-----+---------+----------------+| Field          | Type        | Null | Key | Default | Extra          |+----------------+-------------+------+-----+---------+----------------+| employeeNumber | int(11)     | NO   | PRI | NULL    | auto_increment || lastNamee      | varchar(50) | NO   |     | NULL    |                || firstName      | varchar(50) | NO   |     | NULL    |                || officeCode     | int(10)     | NO   | MUL | NULL    |                || mobile         | varchar(25) | YES  |     | NULL    |                || jobTitle       | varchar(50) | NO   |     | NULL    |                || employee_birth | datetime    | YES  |     | NULL    |                || noth           | varchar(25) | YES  |     | NULL    |                || sex            | varchar(5)  | YES  |     | NULL    |                |+----------------+-------------+------+-----+---------+----------------+9 rows in set (0.00 sec)
ログイン後にコピー


(7): 性別フィールドを変更し、データ型を char(1) に設定し、非 null 制約を設定します。

alter table employees modify sex char(1) not null;
ログイン後にコピー
mysql> alter table employees modify sex char(1) not null;Query OK, 0 rows affected (0.20 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> desc employees;+----------------+-------------+------+-----+---------+----------------+| Field          | Type        | Null | Key | Default | Extra          |+----------------+-------------+------+-----+---------+----------------+| employeeNumber | int(11)     | NO   | PRI | NULL    | auto_increment || lastNamee      | varchar(50) | NO   |     | NULL    |                || firstName      | varchar(50) | NO   |     | NULL    |                || officeCode     | int(10)     | NO   | MUL | NULL    |                || mobile         | varchar(25) | YES  |     | NULL    |                || jobTitle       | varchar(50) | NO   |     | NULL    |                || employee_birth | datetime    | YES  |     | NULL    |                || noth           | varchar(25) | YES  |     | NULL    |                || sex            | char(1)     | NO   |     | NULL    |                |+----------------+-------------+------+-----+---------+----------------+9 rows in set (0.01 sec)
ログイン後にコピー


(8): フィールドは削除しません。

alter table employees drop noth;
ログイン後にコピー
mysql> alter table employees drop noth;Query OK, 0 rows affected (0.15 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> desc employees;+----------------+-------------+------+-----+---------+----------------+| Field          | Type        | Null | Key | Default | Extra          |+----------------+-------------+------+-----+---------+----------------+| employeeNumber | int(11)     | NO   | PRI | NULL    | auto_increment || lastNamee      | varchar(50) | NO   |     | NULL    |                || firstName      | varchar(50) | NO   |     | NULL    |                || officeCode     | int(10)     | NO   | MUL | NULL    |                || mobile         | varchar(25) | YES  |     | NULL    |                || jobTitle       | varchar(50) | NO   |     | NULL    |                || employee_birth | datetime    | YES  |     | NULL    |                || sex            | char(1)     | NO   |     | NULL    |                |+----------------+-------------+------+-----+---------+----------------+8 rows in set (0.01 sec)
ログイン後にコピー


(9): フィールド名 favourite_activity を追加します。データ型は varchar(100)です。

alter table employees add favoriate_activity varchar(100);
ログイン後にコピー
mysql> alter table employees add favoriate_activity varchar(100);Query OK, 0 rows affected (0.09 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> desc employees;+--------------------+--------------+------+-----+---------+----------------+| Field              | Type         | Null | Key | Default | Extra          |+--------------------+--------------+------+-----+---------+----------------+| employeeNumber     | int(11)      | NO   | PRI | NULL    | auto_increment || lastNamee          | varchar(50)  | NO   |     | NULL    |                || firstName          | varchar(50)  | NO   |     | NULL    |                || officeCode         | int(10)      | NO   | MUL | NULL    |                || mobile             | varchar(25)  | YES  |     | NULL    |                || jobTitle           | varchar(50)  | NO   |     | NULL    |                || employee_birth     | datetime     | YES  |     | NULL    |                || sex                | char(1)      | NO   |     | NULL    |                || favoriate_activity | varchar(100) | YES  |     | NULL    |                |+--------------------+--------------+------+-----+---------+----------------+9 rows in set (0.00 sec)
ログイン後にコピー


(10 ): メインテーブルofficeを削除します

①テーブルの外部キー制約を削除します:

alter tableemployeesdropforeignkeyoffice_fk;

②テーブルofficeを削除します:drop table office;
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">mysql&gt; alter table employees drop foreign key office_fk;Query OK, 0 rows affected (0.03 sec)Records: 0  Duplicates: 0  Warnings: 0mysql&gt; drop table offices;Query OK, 0 rows affected (0.03 sec)mysql&gt; show tables;+-------------------+| Tables_in_company |+-------------------+| employees         |+-------------------+1 row in set (0.06 sec)</pre><div class="contentsignin">ログイン後にコピー</div></div>


(11): テーブル従業員のストレージ エンジンを MyISAM に変更します。

alter table employees ENGINE=MyISAM;
ログイン後にコピー
mysql> alter table employees ENGINE=MyISAM;Query OK, 0 rows affected (0.17 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> show create table employees \G*************************** 1. row ***************************
       Table: employeesCreate Table: CREATE TABLE `employees` (
  `employeeNumber` int(11) NOT NULL AUTO_INCREMENT,
  `lastNamee` varchar(50) NOT NULL,
  `firstName` varchar(50) NOT NULL,
  `officeCode` int(10) NOT NULL,
  `mobile` varchar(25) DEFAULT NULL,
  `jobTitle` varchar(50) NOT NULL,
  `employee_birth` datetime DEFAULT NULL,
  `sex` char(1) NOT NULL,
  `favoriate_activity` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`employeeNumber`),
  KEY `office_fk` (`officeCode`)) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 row in set (0.00 sec)
ログイン後にコピー


(12) テーブルemployeesの名前をemployees_infoに変更します。

alter table employees rename employees_info;
ログイン後にコピー
rree

関連する無料学習の推奨事項:

mysql データベース(ビデオ)

以上がMySQL 演習 1: データ テーブルの基本操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MySQL のデータテーブル圧縮テクノロジー MySQL のデータテーブル圧縮テクノロジー Jun 16, 2023 am 08:16 AM

MySQL は、多くの Web サイトやアプリケーションの中核コンポーネントである一般的なリレーショナル データベースです。データの量がますます大きくなるにつれて、MySQL のパフォーマンスを最適化する方法が特に重要になります。重要な領域の 1 つはデータ テーブルの圧縮です。この記事では、MySQL のデータ テーブル圧縮テクノロジを紹介します。圧縮テーブルと非圧縮テーブル MySQL には、圧縮テーブルと非圧縮テーブルの 2 種類のデータ テーブルがあります。非圧縮テーブルは MySQL のデフォルトのテーブル タイプで、固定長の行形式を使用してデータを格納します。これはデータを意味します

MySQLにおけるデータテーブルDDL操作技術 MySQLにおけるデータテーブルDDL操作技術 Jun 15, 2023 pm 07:55 PM

MySQL は、完全な DDL (データ定義言語) 操作をサポートする非常に人気のあるオープン ソース リレーショナル データベース管理システムです。 DDL は、データ テーブル、ビュー、インデックスなど、データベース内のさまざまなデータ オブジェクトを定義および管理するために使用される言語です。データベース管理者と開発者にとって、MySQL のデータ テーブルの DDL 操作テクノロジに習熟することは非常に重要です。この記事では、MySQL におけるデータテーブルの DDL 操作の技術と方法を詳しく紹介し、実際の操作例を示します。 1. データ テーブルの作成 データ テーブルの作成は DDL で行われます。

mysqlはデータテーブル名を変更します mysqlはデータテーブル名を変更します Jun 20, 2023 pm 05:52 PM

MySQL はデータ テーブルを変更します: 1. まずデータベース内のすべてのテーブルを確認します。コードは「SHOW TABLES;」です。 2. テーブル名を変更します。コードは「ALTER TABLE 古いテーブル名 RENAME [TO] 新しいテーブル名」です。 ;"。 3. テーブル名が正常に変更されたかどうかを確認します。コードは「SHOW TABLES;」です。

MySQL でのデータ テーブルのリロード手法 MySQL でのデータ テーブルのリロード手法 Jun 15, 2023 pm 11:28 PM

MySQL はオープンソースのリレーショナル データベース管理システムであり、その基本機能はデータベースの設計、データの保存、管理において優れています。 MySQL では、データ テーブルはデータ ストレージの最も基本的な単位です。実際のアプリケーションでは、データ テーブルのリロードは非常に一般的な操作手法であり、データベースの操作効率を向上させ、システムの安定性を向上させるのに役立ちます。この記事では、MySQL におけるデータ テーブルのオーバーロードの概念、原理、実際の応用まで、この操作テクニックを詳しく紹介します。 1. データ テーブルのオーバーロードとは何ですか? データ テーブルのオーバーロードとは、

MySQL の AVG 関数を使用してデータテーブル内の数値列の平均値を計算する方法 MySQL の AVG 関数を使用してデータテーブル内の数値列の平均値を計算する方法 Jul 24, 2023 pm 09:52 PM

MySQL の AVG 関数を使用してデータ テーブル内の数値列の平均値を計算する方法の紹介: MySQL は、データを処理および計算するための豊富な組み込み関数を備えたオープン ソースのリレーショナル データベース管理システムです。このうち、AVG関数は数値列の平均を計算するために使用される関数です。この記事では、AVG 関数を使用して MySQL データ テーブル内の数値列の平均値を計算する方法を紹介し、関連するコード例を示します。 1. サンプル データ テーブルを作成する まず、デモンストレーション用のサンプル データ テーブルを作成する必要があります。というファイルがあるとします。

thinkorm を使用してデータ テーブル間の関連クエリを実装する方法 thinkorm を使用してデータ テーブル間の関連クエリを実装する方法 Aug 01, 2023 am 08:25 AM

thinkorm を使用してデータ テーブル間で関連クエリを実装する方法 はじめに: データベース開発中、複数のデータ テーブル間で関連クエリを実行する必要がある状況によく遭遇します。優れたデータベース ORM フレームワークである thinkorm を使用すると、データ テーブルの関連クエリを簡単に実装し、開発効率を向上させることができます。この記事では、thinkorm を使用してデータ テーブル間の関連クエリを実装する方法を紹介し、読者の理解を助けるコード例を示します。 1. 基本概念 関連するクエリを実行する前に、まず次のことを理解する必要があります。

MySQL の基盤となる最適化を実装する方法: データ テーブルの水平分割戦略と垂直分割戦略 MySQL の基盤となる最適化を実装する方法: データ テーブルの水平分割戦略と垂直分割戦略 Nov 08, 2023 pm 06:57 PM

MySQL の基礎となる最適化を実現する方法: データ テーブルの水平および垂直パーティション化戦略 (特定のコード サンプルが必要) はじめに: 大規模なアプリケーション シナリオでは、MySQL データベースは、大量のデータの保存とクエリのプレッシャーに直面することがよくあります。この問題を解決するために、MySQL は、水平パーティショニング (水平パーティショニング) と垂直パーティショニング (VerticalPartitioning) を含むデータ テーブル パーティショニング戦略を提供します。この記事では、次の点に焦点を当てて、MySQL の基盤となる最適化を実装する方法を紹介します。

MySQL で MAX 関数を使用してデータ テーブル内の最大値を見つける方法 MySQL で MAX 関数を使用してデータ テーブル内の最大値を見つける方法 Jul 25, 2023 pm 09:49 PM

MySQL で MAX 関数を使用してデータ テーブルの最大値を見つける方法 はじめに: MySQL では、データ テーブルの最大値を見つけるなど、データ テーブルに対してさまざまなクエリや分析を実行する必要があることがよくあります。データ テーブルの最大値は MAX 関数を使用して簡単に見つけることができ、データをさらに処理するときに非常に役立ちます。この記事では、MAX 関数を使用してデータ テーブル内の最大値を見つける方法と、対応するコード例を紹介します。 1. MAX 関数の概要 MAX 関数は、MySQL の集計関数です。

See all articles