LoginSignup
3
2

More than 5 years have passed since last update.

データベース操作(SQL)

Posted at

SQL(Structured Query Language)とは、

リレーショナルデータベース(RDB)の操作を行うための言語です。

:point_up:簡単にいうと、テーブルとして扱ってきた表形式の構造で管理するデータベースを操作する、ということです。


目的

ターミナルでデータベースを操作するコード集を作る


今回は、ターミナルでの操作をまとめて紹介します。

①mysqlにrootユーザーが接続します

terminal.
mysql -u root

コレをすることで

terminal.
mysql>

となります。

②データベース作成

terminal.
mysql> CREATE DATABASE データベース名;

③データベースができているか確認

terminal.
mysql> SHOW DATABASES;

*データーベースを削除する場合

terminal.
mysql> drop database データベース名 ;

:point_up_tone1:アプリを作った場合は、そのアプリ配下まで移動してコレ

terminal.
$ rake.db:drop


続いて、USE文を使ってデーターベースを選択します。
terminal.
USE データベース名;
terminal.
myaql> USE test;
Database changed
mysql>

テーブル構造の操作

◎データーベースに存在するテーブル一覧表示

terminal.
mysql> SHOW TABLES;

◎テーブル作成

terminal.
CREATE TABLE テーブル名 (カラム名 カラム名の型, ……);

:point_up:カラム名の型
数字      INT
文字列  VARCHAR(M)

文字列のVARCHAR( )の( )には、文字列の最大の容量(つまり、(5)なら最大5文字文の容量を格納するということ)です。

terminal.
mysql > CREATE TABLE sports ( id INT,name VARCHAR(20));

◎テーブル確認

terminal.
SHOW TABLES;

◎テーブルの構造確認

terminal.
SHOW colums FROM sports;

作成したテーブルを操作

◎テーブル内容の変更
・カラムの追加

terminal.
ALTER TABLE テーブル名 ADD (カラム名 カラムの型);
#2つ以上追加の場合は、 , を入れて書いていく

・カラムの修正

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

・カラムの削除

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

◎データを登録する
・テーブルのカラムにデーターを登録する

terminal.
#全てのカラムに値を入れる
INSERT INTO テーブル名 VALUES(値1,値2,値3);

#特定のカラムのみに値を入れる場合
INSERT INTO テーブル名(カラム名1,カラム名2) VALUES(値1 , 値2);

#例
INSERT INTO SPORTS VALUES(1, "花子", テニス);

#例
INSERT INTO sports(id, name) VALUES(2, "山田");

・テーブルにあるレコードを全て表示する

terminal.
SELECT * FROM sports;

・データの更新をする

terminal.
UPDATE テーブル名 SET 変更内容 WHERE 条件;

例
UPDATE sports SET name = "田中" WHERE id = 2;

#:WHERE は どのデータを変更するのかを書く
例: WHERE id = 2

・データの削除

terminal.
DELETE FROM テーブル名 WHERE 条件;

例
DELETE FROM sports WHERE id = 2;

今回はターミナルでデータベースを操作するコードをまとめました。

3
2
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
3
2