業界No.1の実績!23日の短期で学ぶ就職/転職のためのプログラミングスクール「無料PHPスクール(Webプログラミング研修&就職・転職支援)」
【毎回12人限定】【IT/Web業界にエンジニアとして就職/転職したい、18~32歳限定(国籍・学歴・経験不問)】☆未経験歓迎!

無料PHPスクール⑬~3日目:データベース(DB)とSQL

   

  • SQLをコマンド(Windows:コマンドプロンプト、Mac:ターミナル)から操作し、データベースの作成/テーブル作成/SQL基本構文の演習と、Webサイトへの組込みを行います。
  • ●Windowsの方
    XAMPPのコントロール・パネル(アプリケーション・マネジャー)から「shell」を選択してください。コマンド・プロンプトのような(黒い)画面が開きますので、「mysql」と入力します。MySQLが起動します。抜ける(終了する)時は、「quit」と入力します。
  • ●コマンドプロンプトの基本的な操作方法
    ・MySQLの入り方:cd\xampp\mysql\bin 
    mysql -u root -p 
    PW 入力
    ・MySQLの出方 :quit か \q かexit
    ・rootは各データベースへの権限付与を行う大元となるデータベース
    ・ディレクトリ間の移動方法 cd ディレクトリ名
    ・ディレクトリを一つ戻る cd ../
    ・ディレクトリの中身の確認方法(Win:dir、Mac:ls)
  • ●board/データベース作成.txt(board_db):MySQL基礎
    ・ログイン/データベース作成/選択/データベース一覧表示/テーブル作成/テーブル一覧表示/テーブルへのデータの挿入/テーブルデータの表示
    ・接続→命令→結果→表示の流れ
    ・CRUD = Create(作る)、Read(読み込む)、Update(更新)、Delete(削除)
    ・mysqli_connect(host user pass name)の順番
    ・rootより新規データベースの作成が可能
    create database 作成するデータベース名 default character set utf8;
    以下、ファイル名 見ていいデータベースの権限付与 PW設定を行い書式設定を指定する
    ・SELECT :表示するという意味
    ・insert into ~ :~に値を入れる
    ・* :全部、すべての意味
    ・show databases ; でデータベースを表示可能
  • ●資料/データベースのコマンド.txt:データベース・コマンド
    ・データベースを作成する:CREATE DATABASE データベース名
    ・ユーザを作成する:GRANT 権限 ON DB名.TABLE名 TO ユーザ名@ホスト名 IDENTIFIED BY ‘パスワード’ WITH GRANT OPTION;
    ・テーブルを作成する:CREATE TABLE テーブル名 ( カラム1 型, カラム2 型 );
    ・データベースの一覧を表示する:SHOW DATABASES;
    ・データベースを選択する:USE データベース名
    ・テーブルの一覧を表示する:SHOW TABLES;
    ・テーブルの構造を表示する:DESC テーブル名;
    ・データを登録する:INSERT INTO テーブル名 ( カラム1, カラム2, … ) VALUES ( 値1, 値2, … );
    ・データを更新する:UPDATE テーブル名 SET カラム1 = 値1, カラム2 = 値2, … WHERE カラム3 = 値3;
    ・データを削除する:DELETE FROM テーブル名 WHERE カラム1 = 値1;
    ・データを選択する:SELECT カラム1, カラム2, … FROM テーブル名 WHERE カラム名 条件
    ・ユーザーの確認:SELECT host,user FROM mysql.user;

    データの後に続く()は文字の長さ。varchar(10)だと10文字
    intはなくてもOK

  • ●資料/store.sql:リレーションを伴ったSQL
  • ●board/board3.php:データベースを使った掲示板(表示のみ)
    ・データベースホストへ接続して、結果を配列に格納する
    ・まずデータベースへ接続するために変数の定義。
    ・$linkからデータベースホストへ接続し、if文を制限(鍵)をかける。
    ・関数 mysqli_query(); でデータベースboardへアクセスし帰ってきた値を、関数 mysqli_fetch_assocで配列し格納する。
    ・mysqli_close(); までの記述はデータベースにアクセスし値を表示させ、接続を閉じるまでの基本の流れとなっているため、何度も写経し覚えてしまう。
    ・全角スペースに気を付ける
    ・データベースへのアクセス順にも注意
    ・データベース側にエラーの原因がある可能性もある(board_dbが正常に作成されていない)
     show databeses ; で原因切り分け
  • ●board/board4.php:データベースを使った掲示板(入力と表示)
    ・データの挿入(書き込み)
    ・board4はboard3の条件文の中にさらにif文を加えているだけ。if文の中に複数のif文が入っているので解りづらいが、どの変数がどういった役割をしているのか読み解けるようにする。
    ・上からecho”aaa”; と出力していき、どこまでが表示されるか確認。表示されない箇所のすぐ上にエラーの原因がある。
    ・var_dumpで変数の中身をチェックし何も入っていなければ、その変数にはデータが届いていない。
    ・$_POSTのPOSTは必ず大文字で表記する。

 - 学習アドバイス

  関連記事

  おすすめ記事