Connection.exec

SQLを同期的に実行します。結果はResultオブジェクトとして返されます。

構文

sph.exec( sql );
SQLパラメータを使用しないタイプ
sph.exec( sql , param1 , param2 , ... );
SQLのパラメータを使用し、メソッドの引数として値を渡してバインドするタイプ

引数

sql
実行するSQL文指定します。SQLパラメータとして$1、$2、...を使用することができます。詳しくはPostgreSQLのマニュアルをご覧ください。
param1、param2、...
SQL内の$1、$2、にバインドされるパラメータを指定します。

戻り値

Resultオブジェクト

解説

SQLを同期的に実行します。
SQLには$1、$2、・・・の形式でパラメータを埋め込むことができます。SQLに埋め込んだパラメータには、param1、param2、としてexecメソッドに渡した値がバインドされます。
なお、このメソッドではSQLが同期的に実行されるため、時間がかかるSQLを実行すると画面が固まった状態になってしまいます。その場合は、非同期バージョンのConnection.execAsyncを利用してください。

コード

var conn = sph.dbConnect();
var sql = "SELECT * FROM keiba.race WHERE kaisaibi=$1 AND place=$2";
var res  = conn.exec( sql , '20170312' , '06' );//3月12日中山のレースを検索
var rows = res.fetchAll();//結果の行を一括取得
console.log( rows );//コンソールに出力