5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【SQL】SQLコマンド入門

Posted at

#はじめに
学習中の備忘録です。

#概要

  • データベースの表示・選択
  • データの登録・更新・削除

#前提
MYSQL

#データベースの表示・選択
mysqlに接続

ターミナル
% mysql -u root

ターミナル表示
9f2a7f2e005c30dc50d3f50f2a84ff73.png

###データベース一覧を表示

SHOW DATABASES;
ターミナル
mysql> SHOW DATABASES;

ターミナル表示
61ee7bb56e6c9c19f86316276ab8ded2.png

###データベース選択

USE データベース名;

画像にはありませんがmy_hobby_app_developmentというデータベースを選択します。

ターミナル
mysql> USE my_hobby_app_development;

ターミナル表示
4a099ecd284862d872bc925fa64cb25d.png

###テーブルを表示

SHOW TABLES;
ターミナル
mysql> SHOW TABLES;

ターミナル表示
fe9bd1c78cc643c5036b45f34e24d095.png

###カラムを表示

SHOW columns FROM テーブル名;

postsテーブルのカラムを表示します。

ターミナル
mysql> SHOW columns FROM posts;

ターミナル表示
dcca8a02de58d5ea7edd834100de8c82.png

#データの登録・更新・削除
##ALTER TABLE文
カラムの追加・修正・削除はすべてテーブル構造の変更です。
そのためSQL文は共通して、ALTER命令を用いたALTER TABLE文を使用します。
実行時は以下のような文法で使用します。

ALTER TABLE テーブル名 操作

###データの登録

型名 保存できる値
INT 数字
VARCHAR(M) 最大M文字の文字列

カラムを1つだけ追加する場合

ALTER TABLE テーブル名 ADD カラム名 カラムの型;

カラムを複数追加する場合

ALTER TABLE テーブル名 ADD (カラム名 カラムの型, ……);

postsテーブルにnumカラムをint型で追加

ターミナル
mysql> ALTER TABLE posts ADD num int;

ターミナル表示
b35777ea94fee9776dc7183ad045715f.png

###データの更新

ALTER TABLE テーブル名 CHANGE 古いカラム名 新しいカラム名 新しいカラムの型;

numカラムをnumberカラムに更新

ターミナル
mysql> ALTER TABLE posts CHANGE num number int;

ターミナル表示
c85117cc6d75f3083d7a9cf4d921dee9.png

###データの削除

ALTER TABLE テーブル名 DROP カラム名;

postsテーブルのnumberカラムを削除

ターミナル
mysql> ALTER TABLE posts DROP number;

ターミナル表示
ee8ebf9710a93d4a3bd6a3d09c74ba48.png

#まとめ
Railsでアプリケーション作成してる段階ではあまり登場しませんが、適宜追記するかもです。

5
6
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
5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?