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?