どうも!ひよこSE(@PiyoOct)です。
DB(データベース)って何?
ひとことでわかりやすく言えば、「データを保存しておく入れ物や箱のこと」です。
「データを保存」って言われてもなぁ。
ここで言うデータとは、「社員番号」とか「氏名」のようなものだと思ってください。
「社員番号とか氏名を保存しておく入れ物や箱のこと」と言い換えれば、少しはイメージつくかと(*´ω`)。
DB(データベース)とは?データを保存しておく入れ物や箱のこと
DB(データベース)とは、データを保存しておく入れ物や箱のことです。
まさに、ポイっと入れ物に投げて保存する感じなのですが、何でも保存できるというわけではありません。
データの形は一定でないとダメ
データベースは、人間の好きなように保存できるというわけでもなく、データの形は一定でないとダメです。
例えば、「社員番号というデータを保存したい」ってなったときをイメージしてください。
「10001」とか「001234」みたいな「数字」は「番号」なので、保存できます。
ただ、「あいうえお」のような、「ただの文字」はどう見ても、社員番号ではないので保存できません。
データの項目の数は先に決める
あと、データベースは、データの項目の数は先に決める必要があります。
「社員番号」を保存すると決めたら、「社員番号」を保存する用の入れ物ができます。
なので、「社員番号」を保存する入れ物に、別の項目の「氏名」を追加で保存するみたいなことはできません。
でも、社員番号と氏名ってありそうな組み合わせじゃない?
だったら、その組み合わせを保存する入れ物を用意する!
例えば、「社員番号のついでに、氏名も。あとは性別も保存しておきたい」となったら、「社員番号と氏名と性別のまとまりが、ワンセットで保存できる入れ物」を用意する必要があります。
DB(データベース)に入るデータの種類は、一つでもいいし複数でもいいですが、「データを保存しておく入れ物や箱のこと」であるのは変わらないですね(*´ω`)。
身近なところだとExcelも広い意味ではDB
データを入れる入れ物といってもあまり見ないよね?身近な例はないの?
システム開発するお仕事でないとしたら、たしかにDB(データベース)を使うことはあまりないですね(*´ω`)。
そこで・・・。
少し強引になりますが、身近なところで言えば、ExcelもDBに近いです。
※「いやいや、それは違う」とかツッコむ人もいそうですが、そこはご勘弁を。
Excelでは、データを入力して、フィルタ機能で必要なデータだけを抜き出したり。
※下の画像の、四角に▼がついてるセルでフィルタできる
フィルタ機能とかピボットテーブルの作成は、データベースに近いことをやっているかと。
システム開発におけるDBならSQLと呼ばれるものを実行
※ここからは、ざっくりとですが、少し実践的な話をするので、余裕がある人だけお読みください。実際にどんなことをするのかを、チラッと知りたい人向けです(*´ω`)。
さて、DBというものが、システム開発におけるDBを指す場合。
SQLと呼ばれるものを実行して、データを新しく保存したり、保存したデータを取り出します。
SQLを書いてデータベースのテーブルとやり取り
SQLってむずそう・・・
早い話が、プログラミングのひとつです!
データベースのさらに中には、「テーブル」というのがあって、そこにデータは保存されます。
「SQLとは?データベースとデータをやり取りするときに使う言葉」で詳しくは書きますが、データベースのテーブルに対して、SQLをあれこれ書いてデータを登録したり、取得したりするのです。
簡単なSQLの例
例えば、社員のデータを保存することを目的とした「社員」テーブルというものがあったとして。
【社員テーブルの定義】(あくまでも例です)
社員番号
入社年度
社員名
性別コード ※1=男, 2=女
2021年度に、山田太郎くん・佐藤花子ちゃん・鈴木一郎くんの3人が入社したとして。
それを、「『社員』テーブルに登録・保存しておきたいな~」となったら、こんな感じのSQLを書きます(あくまでイメージです)。
insert into 社員 values (20210001, 2021, ‘山田太郎’, ‘1’);
insert into 社員 values (20210002, 2021, ‘佐藤花子’, ‘2’);
insert into 社員 values (20210003, 2021, ‘鈴木一郎’, ‘1’);
commit;
これで、2021年に入社した3人が社員テーブルに登録されました。
さて、2021年に入社した男性社員の人数が知りたいとしたらこんな感じのSQLを書きます。
select count(*) AS 男性社員人数 from 社員 where 入社年度 = ‘2021’ and 性別コード = ‘1’;
そしたらこんな感じで結果が返ってきますね。
男性社員人数
2
・・・まぁ、こんな感じのノリでSQLを書いて、DBをあれこれ操作します。
とりあえずは、「システム開発におけるDBとは、SQLっていうものを書いて、データを保存したり取り出したりする」というのが理解できていれば十分かと。
まとめ:(データベース)はデータを保存する入れ物
DB(データベース)ときたら、「データを保存しておく入れ物や箱のこと」のことだと思ってください。
身近なところで近いのは、エクセルのフィルタ機能やピボットテーブル。
実際のシステム開発では、データベースは、「SQLっていうのを書いて保存したり、必要なものを抜き出したりするんだな~」くらいに思っておいてくださいまし(-_-;)。
コメント