「データベース~レコードの追加と検索~」の編集履歴(バックアップ)一覧に戻る

データベース~レコードの追加と検索~ - (2015/10/20 (火) 00:29:44) の編集履歴(バックアップ)


データベースでレコードを追加する時に使うSQL文を勉強してみます。

レコードの追加

INSERT INTO テーブル名(カラム名1, カラム名2, …) VALUES(値1, 値2, …);

カラムを指定しない場合はカラムの左から順番にVALUESに記入された値が適用されていきます。
実際のphpプログラムの中では、、、

$pdo = new PDO("mysql:dbname=hoge", "id", "password");//データベースにアクセス
$st = $pdo->query("INSERT INTO table_name(title,content,status) VALUES('$title','$content','2')");//ポストの中にタイトルとコンテンツとステータスカラム2を挿入する
header('Location: index.php');//header関数でLocation: URLを指定してリダイレクト
exit();//処理終了

また、SQLでは文字列をシングルクォートまたはダブルクォートで囲みます。

レコードの検索

次にレコードの検索についてみていきます。

SELECT * FROM table_name;

これはtable_nameというテーブルから全てのレコードを選んでくるという意味になります。
さらに

SELECT * FROM テーブル名 WHERE 条件式;

と条件文を指定すると、欲しいレコードを絞り込む事が出来ます。
実践的なコードとしては、

$st = $dbh->query("SELECT * FROM post where status = '2' ORDER BY no DESC");//記事番号が大きい順番、ステータスカラムが2のものを表示

というような書き方になります。