PHPにおけるデータベースの基本操作

なわて投稿サムネイル

Databaseの基本操作 CRUD(クラッド)

生成(Create)

読み取り(Read)

更新(Update)

削除(Delete)

 

データベースとは

データをハードディスクに集積させ、そのデータを追加・検索・抽出・更新などの機能を利用できるようにしたサービス。

そのようなサービスを提供するソフトウェアをデータベース管理システム(DBMS)といい、そのようなサーバーをデータベースサーバーという。

 

データベースは2種類の意味合いを持つ

①領域。

MySQL等で作成した領域。

テーブル、行、列から構成されたデータベス名を付けたデータ。

 

②データベースサーバー

データベースに接続又は切断などという表現で使われる。

 

データベースの種類

カード型データベース

ネットワーク型データベース

オブジェクト指向型データベース

Key-Value型データベース

リレーショナルデータベース(RDBMS)

 

RDBMS

昨今広く使用されているデータベース。

「関係データベース」

relational database management system

データを行(レコード)と列(カラム)の表(テーブル)で管理する。

 

MySQL / MariaDB

RDBMSのソフトウェア

MySQL→MariaDBに変更

XAMPPではMariaDBをMySQLと表記している。

 

SQL

SQLは、RDBMSを動かすプログラミング言語。

Structured Query Langage 構造化問合せ言語

 

MySQLの機能

データベース作成

テーブルの作成

データの追加

データの取得・表示

データの検索

データの更新

データの削除

 

MySQLのデータベース作成

①同じ名前のデータベース削除

②データベース作成

③ユーザーの作成

④データベースを指定(接続)

 

①データベースの削除

作成前に同じ名前のいらないデータベースがあった場合に削除するため

構文

drop database if exists データベース名;

②データベース作成

構文

create database データベース名 default character set utf8 collate utf8_general_ci;

③ユーザーの作成

構文

GRANT 与える権限 ON データベース名.テーブル名 TO ユーザー名 identified by ‘新規パスワード’;

 

④データベースを指定(接続)

構文

use データベース名;

コード

drop database if exists データベース名;
create database データベース名 default character set utf8 collate utf8_general_ci;
grant all on データベース名.* to 'ユーザー名'@'localhost' identified by '新規パスワード';
use データベース名;

all on データベース名.*
データベースの全てのテーブルに対して、全ての権限を与える。

 

テーブルの作成

構文

create table テーブル名(
列(カラム)名 データ型 属性 primary key,
列(カラム)名 データ型 属性,
列(カラム)名 データ型 属性
);

データの追加・行の追加 insert

SQL文

構文

insert into テーブル名 values ( 列1の値 , 列2の値 , ….)

 

データの取得・表示 select

SQL文

構文

select 列名 from テーブル名

列のデータの取り出し

構文

変数名or配列名 [ ‘列名’ ]

“変数名or配列名 [ 列名 ]”

 

データの検索 where

SQL文

構文

select * from テーブル名where 列名 = ’ 検索キーワード ‘

and演算子 (論理演算)

構文

select * from テーブル名 where A and B

Aであり、かつBである。場合に検索する。

?

後から好きな値を設定できる。

例)select * from テーブル名 where 列名 = ?

 

likeとワイルドカード

曖昧な条件で検索したい時に使う。

lile

指定したキーワードを含まない場合。

not like

ワイルドカード

%

構文

select * from product where name lile ‘%検索ワード%’

 

データの更新 update

SQL文

構文

update テーブル名 set 列名=値 , 列名=値 where 列名=値;

 

データの削除 delete

SQL文

構文

delete from テーブル名 where 列名=値;