データベース

データベースを作る

1. XAMPP Control PanelのMysqlのadminを起動
(起動しなければApacheのadminからツール[phpMyAdmin])


2. 新規データベースを作る
mydbという名前のデータベースを作成 照合順序→「utf8_general_ci」


3. テーブルを作成
itemsというテーブルに2つ項目をつくる

idは番号を割り振るので、INT(整数)
nameは文字入力するので、TEXT

入力後は「保存する」 ※「実行する」のボタンではない


4. テーブルにデータを入力
挿入タブを選択。idとnameを入力し「実行」

または

SQLタブを選択し、以下のように入力。

INSERT INTO items SET id=1, name='商品1';
SQL文いろいろ
  • INSERT…データを挿入する
  • CREATE TABLE……テーブルの新規作成(まだ空の状態)
CREAT TABLE my_items (id INT, item_name TEXT, price INT);

「my_items」という名前のテーブルを作る
項目「id(整数)」、「item_name(テキスト)」、「price(整数)」を作る

  • UPDATE……データの更新
UPDATE my_items SET price=180 WHERE id=1;

my_itemsテーブルのid1のデータの値段を180円に変更

  • DELETE……データの削除
  • SELECT……データの検索
SELECT id, item_name FROM my_items WHERE id =1;

my_itemsのid1のデータから、idとitem_nameを表示する

  • WHERE……条件を指定して検索
SELECT * FROM my_items WHERE price<180;

my_itemsテーブルのすべての項目からprice180円未満のデータを検索する

便利な設定
  • プライマリーキー

重複する値は設定できなくなる
一度削除した値は永久欠番

  • オートインクリメント

自動連番になる
保存するときエラーが出たらデフォルト値をnullまたはnoneにする
プライマリーに設定したフィールドにのみ利用できる

メモ

文字化けした場合は照合参照の設定が原因。いったんデータベースを削除し作り直すしかない。



お問い合わせデータをデータベースで管理する

昨日作ったthanksページに追記
1. データベースに接続する

$dsn = 'mysql:dbname=データベース名;host=データベースホスト名';
$user = 'ユーザー名;
$password = 'パスワード';
$dbh = new PDO($dsn, $user, $password);
$dbh -> query('SET NAMES UTF8');


2. 接続したデータベースに対し、何をするか指示

$sql = 'ここに指示を書く';
$stmt = $dbh -> prepare($sql);
$stmt -> execute();

3. データベースから切断

$dbh = null;