この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
ページ更新者:guest
更新日時:2017-08-10 19:08:38

タイトル: SQL実行方法

以下の説明はDB抽象化レイヤPDOの使用を前提とする。

PDOオブジェクトのprepareメソッドの引数としてSQLを渡し、生成したステートメントexecuteメソッドを呼ぶことでSQLを実行できる。

SQL文はプレイスホルダ化することも可能である。

Select文の場合は結果セットに対して1レコードずつフェッチする。

カラムは $フェッチで取り出した行[カラム名] と指定して取得する。

以下、Insert文とSelect文の実行を例として挙げる。

【例-】    

       try{

           /*

            * DB接続

            */

           //DB接続情報

           $dsn = 'mysql:host=127.0.0.1; port=3306; dbname=test';

           //ユーザ名

           $username = 'root';

           //パスワード

           $password = '9999';

           //PDOオブジェクトを生成

           $pdo = new PDO($dsn, $username, $password);

           /*

            * SQL実行

            */

           //Select文

           $selectStatement = 'SELECT * FROM test_table WHERE delete_flag = :delete_flag';

           

           //PDO Statementオブジェクトを生成(Select文)

           $pdoSelectStatement = $pdo->prepare($selectStatement);

           

           //SELECT文のプレイスホルダに対して値を代入する

           $pdoSelectStatement ->bindValue(':delete_flag', '0', PDO::PARAM_STR);

 

           //Select文実行

           $pdoSelectStatement->execute();

           

           //Select文の結果を出力

           while($row = $pdoSelectStatement->fetch(PDO::FETCH_ASSOC)) {

               print 'id = ';

               print $row['id'];

      print "
";

               print 'name = ';

               print $row['name'];

               }            

       } catch (Exception $ex) {

           print $ex->getMessage();

       }