Blockchain code Metaverse VR

Unity×VR×Blockchain(247)

スポンサーリンク

//tips

//php理解

Phpでの基本的なデータベース処理を確認していく。ショッピングサイトでは、顧客の住所や購買履歴、商品情報などを管理するためにデータベースが使われている。

データベースの中でも広く利用される形式がリレーショナルデータベースでエクセルの表のようなテーブルに相当する。

SQLはこのテーブルを操作するためのプログラミング言語で、テーブル作成、データ追加、検索などができる。

SQLの内容を見ていくことにする。

Shopデータベースが既にある場合はそれを削除。
drop database if exists shop;

drop databaseはデータベースを削除するSQLコマンドで、ダウンロードと勘違いしない。

次は、shopデータベースの新規作成。

create database shop default character set utf8 collate utf8_general_ci;

create database shopの後にあるdefault character setはデータベースで用いる文字コードを表す。基本的にはutf-8で問題ない。

collateは行を並べる順番を決める方式を表し、utf_general_ciという方式を採用している。

続いて、shopデータベースを使用するためのユーザーを作成。利用権限を与える部分。

grant all on shop.* to ‘staff’@‘localhost’ identified by ‘password’;

grantで権限を与えることができ、指定したユーザが存在しない場合には新たにユーザの作成も行える。

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

to 以降は、ユーザ名とホスト名を表し、localhostにおけるstaffというユーザを指定している‘staff’@‘localhost’。staffというユーザが既に存在する場合は権限を設定し、存在しない場合は、新規にユーザを作成し、権限も付与する。

identified by以下はユーザがデータベースにログインするためのパスワード。

この作成したデータベースへの接続は、use shop;で行い、useはデータベースに接続するためのコマンドとなる。

ここまでで、Shopデータベースとstaffユーザー、接続するためのパスワードを作成し、shopデータベースに接続したことになる。

Shopデータベースの中には何も入っていないので、テーブルを作成していく。

create table product(
id int auto_increment primary key,
name varchar(200) not null,
price int not null
);

1番目の列を作成。
id int auto_increment primary key,
のidは列の名前、intは列のデータ型。auto_incrementは行を追加すると自動的に加算される。primary keyは行ごとに異なる値を割り当て行を一意に識別できるようにするもの。

2番目の列を作成。
name varchar(200) not null,
列の名前はname、型はvarchar(200)。varcharは可変長の文字列で最大長を200文字列にしている。ただ、文字数は文字の種類によって異なる点には注意。

not bullはこの列をnullにしてはいけないという制約条件で、値の設定を必須としている。

3番目の列を作成。この列は価格を表すので列名はprice、型はint。
price int not null

これによりshopデータベースの中のproductテーブルにid,name,priceの列を追加することができた。{}の中を,で区切ることで各列を分けて挿入することができることがわかる。

product tableの中に商品データを追加していく。

insert into product values(null,’松の実’,700);

insert intoは指定したテーブルに新しい行を追加するためのコマンド。追加データはvalues…のように記述する。()の内部には各列の設定データを,で区切って指定する。

null,’松の実’,700

だが、1列目はauto_incrementを指定しているので自動的に番号を割り振られるのでnullで問題ない。

作成したprpductテーブルでSQLを使用した操作を確認していく。

select * from product;

これはselect文を使用して指定したテーブルを選択する。

select 列名 from テーブル名;

これにより指定したテーブルの指定した列を取得することができる。

*は全ての列を指定するのでselect * from product;はproductテーブルの全ての列を取得することになる。

指定したい列だけを取得したい場合には列名を指定する。

これらをベースにPhpからデータベースを操作する。

Phpからデータベースに接続するにはPDOと呼ばれる機能を使う。PDOはPHPとデータベースとの間の接続機能を提供する。

PDOはクラスの一種で、データベースを操作するための変数や関数がまとめて定義されている。

$pdo=new PDO(…);

mysqlはmysqlへの接続を表し、:移行に接続に必要な情報を;で区切って並べる。

host=localhostはmysqlがlocalhostに存在することを表す。dbnameはそのままshopデータベースを代入。あとは文字コードをutf8にしている。

<?php
$pdo=new PDO(‘mysql:host=localhost;dbname=shop;charset=utf-8’,’staff’,’password’);

?>

人気の記事

1

皆さん、ついに、エアラインでも、サブスクリプションが始まったのはご存じですか? まだ実験段階ですが、ANAが、定額全国住み放題サービスを提供する「ADDress」と組んで、国内線を4回まで定額利用可能 ...

2

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

3

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

4

ついに、noteの月間アクティブユーザー数が4400万人(2020年3月時点)に到達しました。 そもそも、「note」とは、クリエイターが、文章やマンガ、写真、音声を投稿することができ、ユーザーはその ...

5

ボードゲームカフェが1日2回転で儲かるという記事をみつけたので興味を持ち、調べてみました。 まずは、需要がどれくらいあるのか、市場のようすからみていきましょう。 世界最大のボードゲーム市場はドイツで、 ...

-Blockchain, code, Metaverse, VR
-, ,

Copyright© BUSINESS HUNTER , 2023 All Rights Reserved Powered by AFFINGER5.