Ich möchte in Tabelle Werte aus Array einfügen.Einfügen in Tabellenwerte aus Array
var theFields =
"my_id,"+
"fruit,"+...
var theData = [
my_id,
req.body.fruit,...
]
ich tun kann:
client.query("INSERT INTO theTable("+ theFields +") values($1,$2,$3,$4,$5,$6,$7,$8,$9,...." +
aber ich möchte die "$ 1, 2..so auf $"
So vermeiden, habe ich versucht:
client.query("INSERT INTO theTable("+ theFields +") values($1::varchar[])",[theData], function(err, result) {
client.query("INSERT INTO theTable("+ theFields +") values ANY($1::varchar[])",[theData], function(err, result) {
aber sie funktionieren nicht.
Beachten Sie, dass die Felder vom selben Typ sind, varchar.
(Auch wenn ich verschiedene Arten haben, gibt es eine Möglichkeit, dies wie die mit irgendeiner Lösung zu erreichen, den ich versuche?)
Das ist eine schlechte Idee, weil Variablen richtige für Strings zu entkommen bieten, auch gegen SQL-Injection zu schützen. –