2016-03-19 6 views
1

Gibt es eine Möglichkeit, ausführbare Abfrage von Abfrage mit $ paramters.Aktiv sein komisch, aber ich möchte ausführbare Abfrage in der Datenbank speichern. Eine vollständige Abfrage ohne Parameter ($ 1, $ 2, $ 3Postgres: Get ausführbare Abfrage von der Abfrage mit Parametern

)

i node-postgres bin mit

pg.connect(conString, function(err, client, done) { 

console.log('Executing Insert query'); 

client.query('insert into tablename(column1,column2,column3) values($1,$2,$3)',["data1","data2","data3"], function(err, result) { 

    done(); 

    console.log('finished executing Insert query'); 
    }); 
}); 

das ist, was ich brauche

insert into tablename(column1,column2,column3) values("data1","data2","data3") 

Antwort

2

pg-promise hat eine Abfrage Formatierung Engine, die unabhängig von Abfragen verwendet werden können.

var pgp = require('pg-promise'); 

var query = pgp.as.format('INSERT INTO table(column1,column2,column3) VALUES($1,$2,$3)', 
    ["data1", "data2", "data3"]); 

console.log(query); 

Ausgänge:

INSERT INTO table(column1,column2,column3) VALUES('data1','data2','data3')

Siehe format API.

UPDATE

Für einen High-Performance-Ansatz mit einer einzigen Abfrage INSERTMulti-row insert with pg-promise sehen.