見出し画像

プログラマ必須のSQLの基本をざっくりと(DBの作成~データの挿入)

1.SQL

DB(データベース)から必要な情報を取り出すまたは更新するためのクエリの構文。もちろん、他にも機能はあるが、更新と取得が基本。
更新するものをDML、取得するものをDDLという。
DBにもいろいろあるが、ここではリレーショナルDBで使うクエリについて述べる。

2.リレーショナルDB(RDB)

一般的に用いれているDBの種類で、テーブル(ある項目についてまとめたリストのようなもの)同士に関してリレーション(関係)が定まっているもの。1:1や1:多など

3.DBの作成

まずは、DBを作らないと始まらない。DBシステムは練習などでもちいるならXAMPPをインストールしてMySQLを触るのをオススメする。(多分、多くの人が通る道)
MySQLに接続できるようにして

画像1

ログイン。触るだけなのでrootユーザーでいいだろう。

mysql -u root

-u rootを付けないとPCのユーザー名で入ろうとしてしまうので注意。

以下のようにMariaDB[(none)]>となれば成功。
MariaDBはDBのエンジン。(none)はどのデータベースも参照していないことを指す。なので、DBを作る。

画像2

DBの作成は

create database (DataBaseName);

ここでは名前をfooとする。;(セミコロン)を忘れずに。

画像3

Query OKならば成功。確認のためにDBのリストを出してみる。

show databases;

画像4

勉強用に作ったものもあるが、mysqlはシステム用なので絶対に触らないこと。

4.テーブルの作成

では、fooデータベースを使おう。

use foo;

画像5

作ったばっかなので、何もない。

画像6

なので、作ろう

create table hoge;

と書くと失敗する。0列のテーブルは定義できないからだ。
なので、列(カラム)を定義する。
テーブル作成はとても複雑でシステムを作るときに結構重要だったりする。
が、ここでは単純にIDと名前だけのものにしよう。

create table hoge(
id integer auto_increment not null primary key,
name varchar(255)
);

画像7

ざっくり説明しよう

id integer auto_increment not null primary key

IDというカラムはInteger(8Byte整数)が入って、自動採番されて(auto_increment)、絶対データはあって(not null)、主キー(primary key)ですよ。

主キーとは、絶対に空じゃないダブらないまさしくIdentifyなキー(カラム)。実は、RDBではこれが大事だったりする。(まあ、そうでなくても大事だけど・説明は後程)
そして、

name varchar(255)

nameには255Byteまでの文字が入ることを表している。
varchar,char型があり、varcharが可変長、charが固定長・前方空白埋め。
もちろん、TEXT型はあるがこれは無限長(サーバーの許す限り)なので、下手に使わないほうがいい(ブログの本文などに使うとよい?)。

5.データの挿入

では、データを入れてみよう。

insert into hoge( name ) values ('hanchan');

Javaに慣れていると""で囲みたくなるがSQLでは''で囲む。
””はカラム名に使うためのものなので、気を付けて。

また、idは自動採番してくれるのでidは自分では触らない。

Query OK, 1 row affected.
とかえってこればOK。

では、確認してみよう。

select * from hoge;

画像8

確かに、ID1で登録されている。

今回はここまで!最後にexit;でシステムを終了しよう。

この記事が気に入ったらサポートをしてみませんか?