GUI、CUIでテーブルを作成
GUIでの作成
MySQLWorkbenchでのテーブル作成方法
以下のテーブルを作成する
id(主キー) | name | adress |
---|---|---|
1 | meo1 | xxx-ttt |
2 | meo2 | xxx-yyy |
3 | meo3 | xxx-uuu |
id(主キー) | name | manufacture | price |
---|---|---|---|
1 | meo1 | 〇〇工場 | 1000 |
2 | meo2 | 〇〇工場 | 222 |
3 | meo3 | 〇〇工場 | 900 |
id(主キー) | order_no | item_id(外部キー) | quantity | user_id(外部キー) | buy_date |
---|---|---|---|---|---|
1 | 0001 | 1 | 2 | 1 | 2022/08/21 |
2 | 0002 | 2 | 4 | 2 | 2022/08/22 |
3 | 0003 | 3 | 44 | 3 | 2022/08/23 |
4 | 0004 | 1 | 5 | 3 | 2022/8/24 |
5 | 0004 | 5 | 5 | 9 | 2022/8/24 |
SchemasタブのTablesを右クリックしCreate Tableを押す
Nameにテーブル名をいれてColumnは小文字で定義する
カラムに設定できるオプション
- PK(Primary Key) プライマリキー、同じフィールド内では値が一意
- NN(not null)(nullを許容するか?id=nullはあってはならない)
- UQ(Unique index) ユニーク同じデータ2つを許容するか?
- ZF ゼロ埋め
- UN(Unsigned Data Type) マイナスを付けたくない場合
- AI(Auto Incremental) フィールドが整数型の場合、レコードが挿入される度に+1ずつ値が加算
データタイプ
- INT 数値
- VARCHAR(45)文字(文字数)
Apply
押すとSQLが発行される
$ CREATE TABLE `demo`.`db_exe` (`id` INT NOT NULL AUTO_INCREMENT,`name` VARCHAR(45) NOT NULL,`address'VARCHAR(45) NOT NULL,PRIMARY KEY (`id`));
CUIで作成
テーブルまで移動する
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | demo | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.01 sec) mysql> use demo Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> show tables; +--------------------+ | Tables_in_demo | +--------------------+ | db_ex_item | | db_ex_order_detail | | db_ex_user | | inquiry | | inquiry3 | | item | +--------------------+ 6 rows in set (0.00 sec)
CREATEする
mysql> CREATE TABLE `demo`.`dx_ex_order_detail` (`id` INT NOT NULL AUTO_INCREMENT,`order_no` INT NOT NULL,`item_id` INT NOT NULL,`quantity` INT NOT NULL,`user_id` INT NOT NULL,`buy_date` DATETIME NOT NULL,PRIMARY KEY (`id`)); Query OK, 0 rows affected (0.05 sec) mysql> show tables; +---------------------+ | Tables_in_demo | +---------------------+ | db_ex_item | | db_ex_order_detail | | db_ex_user | | dx_ex_order_detail2 | | inquiry | | inquiry3 | | item | +---------------------+ 7 rows in set (0.01 sec)