MySQL 演習 1: データ テーブルの基本操作
テーブルの作成、さまざまな制約の追加、テーブル構造の生成、テーブルの変更と削除など、MySQL のさまざまな操作を学習している。実践的な演習を行い、データ テーブルの基本操作の基礎を包括的に確認します。
ケース: データベース会社を作成し、次の 2 つのテーブルに示されているテーブル構造に従って会社データベースにオフィスと従業員の 2 つのデータ テーブルを作成し、データの基本操作を完了します。操作プロセスに応じたテーブル。
# (無料学習の推奨事項: mysql ビデオ チュートリアル #)
##
操作过程如下:

mysql -h localhost -u root -p
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)
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)
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)
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> alter table employees drop foreign key office_fk;Query OK, 0 rows affected (0.03 sec)Records: 0 Duplicates: 0 Warnings: 0mysql> drop table offices;Query OK, 0 rows affected (0.03 sec)mysql> 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;
関連する無料学習の推奨事項:mysql データベース(ビデオ)
以上がMySQL 演習 1: データ テーブルの基本操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











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

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

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

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

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

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

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

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