PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come posso usare una variabile come nome della tabella in node-pg?

Questo non è possibile, le query parametrizzate funzionano solo per valori (anziché letterali) ma non per identificatori . Dovrai creare la stringa SQL:

const rows = await db.query(
  `SELECT * FROM ${db.escapeIdentifier(tableName)} WHERE email = $1 AND password = $2`,
  [email, password]
);

Se conosci i possibili valori di tableName variabile in anticipo, potresti scappare senza scappare; in caso contrario, è meglio specificare anche lo schema in modo esplicito.