LoginSignup
0
0

【MySQL】データベースとテーブル作成・削除・追加 (DDL)

Last updated at Posted at 2024-06-03

MySQLのデータ定義言語(DDL)を使ったデータベースの作成と削除のSQLコマンドを記述しています。

INDEX

【作成】

データベース作成
テーブル作成のためのプロジェクト選択
テーブル一覧で確認
テーブルの作成 (Linuxの場合)
完成したテーブル構造を確認

【削除】

テーブル削除
データベース削除

【追加】

テーブル追加

【変更】

テーブル名変更


【作成】

データベース作成

クエリ実施後 Query OK, 1 row affected と表示され、データベース作成完了。

コマンド
-- データベース一覧で確認
SHOW databases;

-- データベース作成
CREATE DATABASE プロジェクト名;

テーブル作成のためのプロジェクト選択

クエリ実施後、Database changed と表示されていればOKです。

コマンド
USE プロジェクト名;

テーブル一覧で確認

テーブルが作成されていない状態である Empty set(0.00 sec) が表示されます。

コマンド
SHOW tables;

テーブルの作成 (Linuxの場合)

クエリ実施後、Query OK, 0 row affectedと表示されればOKです。

コマンド
-- usersテーブルの作成
CREATE TABLE users (
 id INT AUTO_INCREMENT, 
 name TEXT, 
 PRIMARY KEY (id)
);

例1: employees テーブルの作成

コマンド
CREATE TABLE employees (
  employee_id INT AUTO_INCREMENT,
  first_name VARCHAR(50),
  last_name VARCHAR(50),
  job_title VARCHAR(100),
  hire_date DATE,
  PRIMARY KEY (employee_id)
);

CREATE TABLE
新しいテーブルを作成するSQLコマンドです。

employees
作成されるテーブルの名前です。

employee_id
employee_idカラムは従業員の一意の識別子

AUTO_INCREMENT
新しいレコードが追加されるたびに自動的にこのカラムの値を1ずつ増加させるという属性です。これにより、各従業員に一意のIDが自動的に割り当てられます。

first_name VARCHAR(50), last_name VARCHAR(50)
それぞれ従業員の名前と姓を格納します。
VARCHAR(50)は、最大50文字の可変長文字列を格納できることを示しています。
VARCHARは文字列型のデータを格納するのに使われるデータ型です。

job_title VARCHAR(100)
従業員の職種を表し、VARCHAR(100)は最大100文字の文字列データを格納することができます。

hire_date DATE
従業員が雇用された日付を格納します。
DATEは日付型データを格納するためのデータ型で、年月日を格納します。

PRIMARY KEY (employee_id)
PRIMARY KEYはテーブル内でレコードを一意に識別するためのキーを設定します。
ここでemployee_idがプライマリーキーとして設定されており、これによりemployee_idの各値はテーブル内で唯一無二でなければなりません。


完成したテーブル構造を確認

コマンド
DESCRIBE プロジェクト名;

【削除】

テーブル削除

コマンド
-- テーブル一覧で確認
SHOW tables;

-- テーブル削除
DROP TABLE プロジェクト名;

データベース削除

コマンド
-- データベース一覧で確認
SHOW databases;

--データベース削除
DROP DATABASE プロジェクト名;

【追加】

テーブル追加

例)商品テーブルに地方カラムを追加

コマンド
ALTER TABLE 商品
ADD 地方 VARCHAR(50);

【変更】

テーブル名変更

例) 単価 カラムを DECIMAL に変更する

コマンド
ALTER TABLE 商品
MODIFY 単価 DECIMAL(5,1); -- 全体5桁で小数点以下1桁の精度
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0