ネビ活 | ネットビジネス生活

ネットxお金のスキルを作り、未来永劫豊かに暮らす事を目指すサイト

Laravel(PHP)におけるデータベース(SQL)とは?初心者でもよく分かる図と例でやさしく解説。

投稿日:

Laravel(PHP)におけるデータベース(SQL)とは?初心者でもよく分かる図と例でやさしく解説。

LaravelやWordPressとかのPHPを使ってると必ずデータベースって言葉が出てくるけど、イマイチなんなのか分かってないんだけど・・

 

データベースは、ウェブサイトのフォームから投稿されたデータを保管しておくスペースの事です。

 

例えば、ブログなら、テキストエディタ(投稿フォーム)上に記事を書いて、
保存ボタンで内容を保存しますよね。

その投稿記事、投稿タイトル、投稿日、そういったデータを保存しておく場所がデータベースなんです。

 

下の画像のような知恵袋サイトやフォーラムだったら、

投稿された質問や回答、投稿のタイトル、投稿日、コメント、いいね数、検索履歴、ログインID、パスワード、投稿者のプロフィール・・そういったブラウザから入力された情報を保存するスペースがデータベースなんです。

 

つまりサイト上のあらゆるフォームから入力されたデータを保存しておく場所がデータベースって感じでOK?

そういう事。お問い合わせフォームのように、データベースに保存せず直接Emailとして送信するフォームもあるけど、お問い合わせフォームの内容をデータベースに保存する事も可能なんだ。

いいねボタンや投稿日付など、なにか数値が変わるもの、お知らせメールを受け取るかどうかのチェックボックスのONOFF、そういう変動する情報もデータベースで保存しておけるんだ。

Neby
ちなみに、投稿された画像はデータベースに保存されるの?
基本的に画像やビデオ、音声みたいなメディアはStorageフォルダに別途保存されて、リンクだけをデータベースに保存するよ。まぁ、画像をbase64っていうマトリックスみたいな文字列に変換すれば、データベースに保存も可能だけどね。あくまで投稿された文字情報を保存するのが、データベースって感じ
Neby

 

Laravelって稼げるの?独学?スクール?高給を稼ぐためにどうするべきか教えます。

データベースの構造(テーブル、カラム)

データベースは画像のような構造になってます。

まずデータベースは、サイトごと、アプリごとに作ります。上の画像なら、liketestという名前のサイト用のデータベースをまず作ります。

 

例えば、口コミサイトを作ってるなら、
投稿本文、投稿タイトル、投稿者、投稿日、投稿についたいいね数など、
投稿に関するデータをまとめて保存するテーブル(posts table)、

そして、ユーザーID、ユーザー名、パスワード、メールアドレス、といったログインユーザーの情報を保存するテーブル(users table)といった具合に、

一緒に保存しときたい項目(カラム/column)をまとめてるシートがテーブルです。

 

つまりExcelに例えると、

Book1ファイルがデータベース、sheet1,2,3がテーブル、ABCDEがカラムって認識でOK?

全くその通り。データベースはExcelのようなスプレッドシートなんだ。
Neby

 

では、実際のデータベースを見てみましょう。

例えば、辞書サイトjapaslangというデータベースのpostsテーブルを開いてみると、下の画像のようにExcelのようなシートが表示されます。

下の画像が実際のサイトのページです。見比べてみてください。

この投稿の情報がすべて入ってますよね。

 

上の画像のようなウェブページが表示される時に、データベースからその都度必要な情報を取り出して表示してるんです。

laravelのblade,controller,routesの関係図1

例えば、Laravelなら、コントローラーというファイルが、データベースからそのページに必要な記事だけ取り出し、ブレード(サイト全体のレイアウトが書かれたファイル)にガコンとはめ込む事で、ページが表示されるようになってるんです。

Laravelのblade.phpとは?普通の.phpと何が違う?初心者必須の知識!

LaravelのController.phpとは?初心者向けにやさしく図入りで解説

Laravelのroutes(web.php)とは?超初心者向けに図解と実例でやさしく解説!

Laravel初心者が絶望するController,Blade,Routesの関係が図解でよく分かる!

 

データベースに出てくるMySQLとphpMyAdminとは?

ねぇ、さっきの図とかでMySQLやphpMyAdminっていう言葉が出てきたけど、あれは何?

 

まず SQL とは、データベース自体を管理してるシステムの事です。

このSQLシステムでできたソフトが MySQL(MariaDB) です。他にも PostgreSQL、 SQLite などの似たソフトがあります。*MariaDBはMySQLの派生版みたいなものです。

 

大抵のレンタルサーバーには、MySQLが入ってます。

 

そして、このMySQLなどのデータベースの中身をExcelのような表示で見れるようにしてくれるのが、phpMyAdminです。

新しいテーブルを作ったり、カラムの中身を編集したりがExcel感覚で簡単にできるとっても便利なソフトです。

 

そっかぁ、データベースって投稿データをExcelのような形式で見やすく保存しとくスペースだったんだね。

そう、もしこのデータベースが壊れたら、君が丸1年かけて書いてきたブログの全データなんかが消えてしまうって事でもあるから、データベースのバックアップはまめにしっかり取っておいた方がいいよ。Cronって機能を使って自動的にバックアップを取る事も可能だね。手動でやる方法は下の記事に書いてあるよ↓

phpMyAdminでデータベースを丸ごとインポートのやり方。初心者でもできるように解説

Neby

 

ところで、あなたはなぜLaravel、もしくはプログラミングを今学び始めたんでしょうか?

稼げると聞いたから?

じゃあ、どれくらい上達すれば稼げるのか?

どの言語なら稼げるのか?

本当にそんな高給を稼げるのかの現実を知ってますか?

詳しくは下の記事に本音の裏事情を書いてるので参考にしてくださいね。

Laravelって稼げるの?独学?スクール?高給を稼ぐためにどうするべきか教えます。

  • この記事を書いた人

Neby

本を毎日多読しつつ、資産運用、プログラミング、心理学、ネットビジネススキルを猛向上中。貧富の差が広がる5年後、10年後に安心生活を送るためのお金のリテラシー、スキル、資産を一緒に作っていきましょう。

-PHP Laravel入門

Copyright© ネビ活 | ネットビジネス生活 , 2020 All Rights Reserved.