【PHP】PDOでデーターベースアクセス

PDOを使っていろんなデーターベースに簡単に接続!

こんな表現で正しいのか・・分かりませんが、PDOを使うとMysql、PosrgresSQL、SQLite、SQL Serverなどを同じように使うことができるためのものみたいです。

そのあたりはあまり意識せず・・PDOでデーターベースを使っていました・・💦

今回はSQL Serverを使用しています。

SQL Serverへの接続も簡単。

例えば・・

$dsn = ‘sqlsrv:server=SQL ServerのIPアドレスなど;database=データーベース名’;
$user = ‘SQL Serverへの接続ユーザー名’;
$password = ‘SQL Serverへの接続パスワード’;
$dbh = new PDO($dsn,$user,$password);

とするとDBへの接続ができます。

関数に設定しておいて呼び出すと楽だし、使い回しもできます。

$dbhの変数は後ほど使うので、関数化する場合は戻してあげてください。

例えば、上記のコードをこんな感じで関数化しておいて・・。

function dbconnect(){
$dsn = ‘sqlsrv:server=SQL ServerのIPアドレスなど;database=データーベース名’;
$user = ‘SQL Serverへの接続ユーザー名’;
$password = ‘SQL Serverへの接続パスワード’;
$dbh = new PDO($dsn,$user,$password);
return $dbh;
}
$dbh = dbconnect();

と呼び出すとDBへ接続できます。

接続を解除するには$dbhをクリアすればOK。

function dbdisconect($dbh){
$dbh = null;
}

と関数化しておいて呼び出します。

dbdisconect($dbh);

データーの問い合わせ

$dbh = dbconnect();
$tsql = “SELECT * FROM テーブル名”;

$stml = $dbh->prepare($tsql);
$stml-> execute();

と実行します。

SQL実行結果の取得

$QL実行結果を取り出します。

$result = $smt->fetcAll(PDO::FETCH_ASSOC);

foreach($result as $loop){
//$loopにSELECTの結果が1行ずつ入る
}
dbdisconect($dbh);

と言った感じで取り出します。

まずは簡単にDBのデーターを取り出す方法から。