PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak nawiązać połączenie z Postgresem przez Node.js

Oto przykład, którego użyłem do połączenia node.js z moją bazą danych Postgres.

Interfejs w node.js, którego użyłem, można znaleźć tutaj https://github.com/brianc/node-postgres

var pg = require('pg');
var conString = "postgres://YourUserName:[email protected]:5432/YourDatabase";

var client = new pg.Client(conString);
client.connect();

//queries are queued and executed one after another once the connection becomes available
var x = 1000;

while (x > 0) {
    client.query("INSERT INTO junk(name, a_number) values('Ted',12)");
    client.query("INSERT INTO junk(name, a_number) values($1, $2)", ['John', x]);
    x = x - 1;
}

var query = client.query("SELECT * FROM junk");
//fired after last row is emitted

query.on('row', function(row) {
    console.log(row);
});

query.on('end', function() {
    client.end();
});



//queries can be executed either via text/parameter values passed as individual arguments
//or by passing an options object containing text, (optional) parameter values, and (optional) query name
client.query({
    name: 'insert beatle',
    text: "INSERT INTO beatles(name, height, birthday) values($1, $2, $3)",
    values: ['George', 70, new Date(1946, 02, 14)]
});

//subsequent queries with the same name will be executed without re-parsing the query plan by postgres
client.query({
    name: 'insert beatle',
    values: ['Paul', 63, new Date(1945, 04, 03)]
});
var query = client.query("SELECT * FROM beatles WHERE name = $1", ['john']);

//can stream row results back 1 at a time
query.on('row', function(row) {
    console.log(row);
    console.log("Beatle name: %s", row.name); //Beatle name: John
    console.log("Beatle birth year: %d", row.birthday.getYear()); //dates are returned as javascript dates
    console.log("Beatle height: %d' %d\"", Math.floor(row.height / 12), row.height % 12); //integers are returned as javascript ints
});

//fired after last row is emitted
query.on('end', function() {
    client.end();
});

AKTUALIZACJA:— query.on funkcja jest teraz przestarzała i dlatego powyższy kod nie będzie działał zgodnie z przeznaczeniem. Jako rozwiązanie tego problemu spójrz na:- query.on nie jest funkcją



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie można utworzyć tabeli bazy danych o nazwie „użytkownik” w PostgreSQL

  2. Dlaczego najlepiej przechowywać numer telefonu jako ciąg, a nie jako liczbę całkowitą?

  3. Czy można podać parametry dla nazwy tabeli lub kolumny w przygotowanych instrukcjach lub w QueryRunner.update()?

  4. Pakiety PGLogical 1.1 dla PostgreSQL 9.6beta1

  5. Jak przenieść bazę danych PostgreSQL do bazy SQLServer?