WEBシステム開発|PHPとPostgreSQLの開発例|●2_04-SQLコマンドの発行演習

PHPとPostgreSQLを利用したWEBシステムの開発例を掲載していきます。腕時計 販売サイト my-watch.biz



●2_04-SQLコマンドの発行演習

 前回は管理ツールCSEを使ってデータの処理を行いました。ある程度のところまではこれで管理できますがSQLを知らないとそれ以上の処理はできません。
 またPHPで制御する場合はコードにSQLを埋め込む必要があるので習得しないと開発もできません。
 SQLコマンドにはテーブル作成、ユーザー発行、バックアップなどかなりの種類がありますが一番多く使われるのは検索、入力、削除、更新です。
 まずそこから始めることにします。検索のselect文はかなり複雑なのでいくつかに分けて説明します。

●2_04_01-検索処理(基本)(select)

 CSEを使って先ほど作成したデータベースの「kaden_hanbai」に接続して下さい。
 下に示したエリアにSQLを書いていきます。


全てのデータを検索せよ

 下記のように「テーブル」を開いて「new_jouhou_t」を出します。



「select * from」と書きます。


「new_jouhou_t」をダブルクリックします。


「select * from」の後ろに「new_jouhou_t,」


「new_jouhou_t,」の最後の「,」カンマは必要ありません、削除して下さい。


下記のメニューでSQLを実行できますがショート・カットのほうが検索を繰り返す場合は手間がかかるので「Ctrl」キー、「Enter」キーで処理するほうをお勧めします。


画像では分かり難いですが「select * from new_jouhou_t」と色分けされているはずです。
わざとスペルミスをすると、「selec * from new_jouhou_t」のように黒字になります。

では「Ctrl」キー、「Enter」キーで検索して下さい。

下記のように全てのデータが検索されました。


ここまでで検索処理は完了しましたが記載したSQL文をマウスで全て選択して下さい。


下記のように「SQL崩し」を選択します。


以下のように構文が変更されるはずです。


インデントはSQLを読み易くしています。今の段階では短いコードですが長いものでは見通しが良くなります。
「select」と「from」が大文字に変更されています。正式にはこの形が正解です。
ただしどちらでもコマンドは通ります。
保守管理でデータを操作する程度ではどちらでもかまいません、ただしPHPなどにコードを埋め込む場合は「SQL崩し」を使って整形されたものを使って下さい。
なぜそうするかは、ここでは説明しません。SQLの入門にはふさわしく無い内容なので・・・・。

ここで一番簡単な検索文を説明します。

SELECT ← 「検索せよ」という意味です。
  *    
 「*」アスタリスク、全てのカラムが対処という意味です。
FROM
    テーブル名の前に必要です。「から」ぐらいの意味です。
  new_jouhou_t   テーブル名です。

「SELECT * FROM new_jouhou_t」で全てのカラムを「*」で指示していますが、下記でも命令は同じです。

「SELECT date_id_c, title FROM new_jouhou_t」
「*」の部分にカラム名を「,」カンマ区切りで表示しています。
実意のコーディングの要領を示します。

「select」と書きます。半角スペースを追加します。


初めに来るカラム「date_id_c」をダブルクリックします。


下記のように自動的にカラム名「date_id_c」が追加されます。後ろの「,」カンマは次のカラムとの区切りで必要なのでそのまま残します。


次のカラム「title」をダブルクリックします。


「title」カラムが追加されました。最後の「,」カンマは必要ありませんので削除します。


「from」を追加します。


「new_jouhou_t」をダブルクリックします。


「new_jouhou_t」が自動的に記載されます、最後の「,」を削除します。


では「Ctrl」キー、「Enter」キーで検索して下さい。
同様な結果が出ます。

全てのカラムを対象にした場合、
・「*」を使う場合はすぐにデータを出す場合、またSQLのコードを残す必要が無い場合などに有効です。
・敢えて全てのカラム名を記載する場合はPHPなどのプログラムに埋め込む場合に有効です。「*」を使うとカラム名を確認するのに管理ツール、又は定義書を確認する必要があります。
ケース・バイ・ケースで使い分けて下さい。

指定したカラムだけを全て検索する

 今まで説明した要領で画面を操作して下さい。
 カラム「date_id_c」を対象にする。

 SELECT
   date_id_c
 FROM
   new_jouhou_t

下記のようにカラム「date_id_c」だけが全て検索されます。
カラム「title」も同様に検索して見て下さい。


カラムの順番を変更して全てを検索する

 カラムを検索する順番はテーブルと同じにしなくても可能です。

 SELECT
   title,
   date_id_c
 FROM
   new_jouhou_t

検索結果も指定した順番で検索されます。


キーボード操作を最小限にして、管理ツールのインターフェイスを有効に使えば短時間にデータの操作ができます。
同一の内容をテキストデータでPHPなどのプログラム言語を使って処理するとこのように短時間での処理は不可能です。

ここまでの管理ツールの使い方を良く覚えて下さい。


戻る

Copyright (c) 2007 MSweb All Rights Reserved

腕時計 クロノグラフ(時計)のメンズ専門販売サイトカシオ G-SHOCK、Baby-G(腕時計)専門の通信販売サイトG-SHOCK、Baby-G専門通販サイト 運営ブログ

腕時計 女性専用 販売のladies-watch.biz腕時計 メンズ(男性)専門販売のmens-watch.biz