From: | David Johnston <polobo(at)yahoo(dot)com> |
---|---|
To: | pgsql-novice(at)postgresql(dot)org |
Subject: | Re: error: there is no parameter $1 |
Date: | 2013-10-14 23:51:53 |
Message-ID: | 1381794713450-5774559.post@n5.nabble.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
Kinnard Hockenhull wrote
> I get "error: there is no parameter $1" when I try to run this code using
> the node-postgres <https://github.com/brianc/node-postgres> client:
>
> client = pg.connect(connectionString, function(err, client, done){
> if(err) console.log(err);
> client.query('INSERT INTO causes (cause_name, goal, organization,
> sponsor, submitter) VALUES ($1,$2,$3,$4,$5)', r, function(err){
>
This a node usage issue, not PostgreSQL. That said you seem to be wanting
to use a prepared statement yet the syntax you show is a direct query. In a
direct/literal query parameters (whether they be of the "?" or "$#" form)
are not allowed/understood. Where in the code provided do you even attempt
to assign values to ${1-5}?
You either need to replace "${1-5}" with actual data or figure out how to
execute prepared queries in node. The later is recommended since it is the
more secure way of doing things.
<goes looking at node-postgres>
Supposedly the "r" variable holds the array of five values you want to map
onto ${1-5}. You do not show where "r" gets defined so maybe it is
undefined and thus you are not actually mapping values?
David J.
--
View this message in context: http://postgresql.1045698.n5.nabble.com/error-there-is-no-parameter-1-tp5774552p5774559.html
Sent from the PostgreSQL - novice mailing list archive at Nabble.com.
From | Date | Subject | |
---|---|---|---|
Next Message | Madhavan | 2013-10-15 14:52:18 | how to handle Pagination > |
Previous Message | Kinnard Hockenhull | 2013-10-14 22:30:47 | error: there is no parameter $1 |