学習DB第2編(Mysqls DBとTABLEの作成と削除)


学習DB第二編(Mysqls DBの作成とTableの作成)
第2編では、データベースとテーブルの生成作業を行います.
方法は簡単です.
インストールは自分で見てやります.
mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.23-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

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> 
上のコマンドでmyslqに接続します.
DBの作成
まずDBを作成
コマンドはCREATEDATABASE「DB Name」です.
使用するすべてのsql文の末尾は「;」です.セミコロンを付けます.

DB 생성
---------------------------------------------------------
mysql> CREATE DATABASE testdb default CHARACTER SET UTF8;
Query OK, 1 row affected, 1 warning (0.13 sec)

생성한 DB 조회
---------------------------------------------------------
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| testdb             |    < -- DB가 생성이 된것을 확인가능 
+--------------------+
5 rows in set (0.02 sec)
testdbという名前のDBが生成されました.
CHARACTER SET UTF8;言語設定です.
テーブルの作成
テーブルを作成します.
その前にmysqlにtestdbというDBを使うことを伝えなければなりません.
コマンドは*USE"DB Name";
mysql> USE testdb
Database changed
今からTableを作成しましょう
コマンドは、CREATE TABLE「Table Name」(列定義1、列定義2、...)です.
Table 생성
---------------------------------------------------------
mysql> CREATE TABLE testtb1 (
    id NOT NULL INT PRIMARY KEY AUTO_INCREMENT, 
    a VARCHAR(40) NOT NULL, 
    b VARCHAR(40) NOT NULL
);

Table 조회
---------------------------------------------------------
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| testtb1          |
+------------------+
1 row in set (0.00 sec)

Table 구조 조회
---------------------------------------------------------
mysql> DESC testtb1;
+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| id    | int         | NO   | PRI | NULL    | auto_increment |
| a     | varchar(40) | NO   |     | NULL    |                |
| b     | varchar(40) | NO   |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
テーブルが作成されたことを確認できます.
私が入力したコマンドを一つ一つチェックしてみましょう.
1. CREATE TABLE testtb1
その名の通りtestb 1というTableが作成されています.
2. id NOT NULL INT PRIMARY KEY AUTO_INCREMENT
Table上でデータを生成すると,データの生成順序によって1番から一定の番号が付けられる.
自動インクリメント1に設定します.
なお、このIDは1番から始まり、中間削除データにも削除した番号が入力されず、次の番号として生成される.
たとえば、10回のデータを20回消去してデータを再作成すると、21回生成されますが、その場所は入力されません.やったことがないが面倒な仕事ではないことをお勧めします.数字が空いている人がTableを削除して再作成できるのを見たくありません.
3. a,b VARCHAR(40) NOT NULL
a,b郎のデータフォーマットをVARCHAR形式で宣言し,最大40文字まで入力できるようにした.
また、NOT NULLは値のNULL値を許可しない.
資料型の種類
上で使用したVARCHARの他にも様々な資料型が存在する.いくつかの基本資料型を簡単に確認しましょう.
  • CHAR-文字列データ型.たとえば、CHAR(20)を設定すると、最大20文字まで保存できます.データが短い場合、残りのスペースは空白になります.
  • VARCHAR-WICHARなどの文字列資料型.CHARとは異なりVARCHAR(20)が設定され、10文字しか入力されていない場合、残りの10空間は保存されず、文字数サイズのデータのみが格納される.そのため「可変長文字型」と呼ばれています.
  • INTEGER-整数値を格納できる資料型.少数は不可能だ.
  • DATE-日付値を格納できるデータ型.年、月、日を保存できます.
  • TIME-時間を保存できる資料型.時間、分、秒を保存できます.
  • DBとテーブルの削除
    取り除く方法も簡単です.
    DROPを使えばいいです.
    
    table 제거
    ------------------------------------
    mysql> DROP TABLE testtb1;
    Query OK, 0 rows affected (0.41 sec)
    
    mysql> show tables;
    Empty set (0.00 sec)
    
    DB 제거
    -------------------------------------
    mysql> DROP DATABASE testdb;
    Query OK, 0 rows affected (0.16 sec)
    
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    9 rows in set (0.00 sec)
    クリアされたことを確認できます.
    次に、資料を作成してクエリーします.