Re: help with dynamic table name

Поиск
Список
Период
Сортировка
От Jasbinder Singh Bali
Тема Re: help with dynamic table name
Дата
Msg-id a47902760703052048w5cd35326g95f84d41ea2023c7@mail.gmail.com
обсуждение исходный текст
Ответ на Re: help with dynamic table name  ("Peter Schonefeld" <peter.schonefeld@gmail.com>)
Список pgsql-novice
sql := 'INSERT INTO '+ $3 +' (id,body) VALUES ('+ $1 +','+ $2 +')';
remove the double quotes with id and body and see if it works.
~Jas
 


On 3/5/07, Peter Schonefeld <peter.schonefeld@gmail.com> wrote:
Hi Jas, thanks for the quick reply...I had started out with the single quotes, but had chaged it in my many efforts to get the thing to work...with the single quotes i'm getting the error:

"ERROR: 42883: operator does not exist: \"unknown\" + character varying"

====

CREATE OR REPLACE FUNCTION sc_insert_row(char(32),text
,varchar(32)) RETURNS text AS $$

DECLARE sql text;
BEGIN
  sql := 'INSERT INTO '+ $3 +' ("id","body") VALUES ('+ $1 +','+ $2 +')';
  EXECUTE sql;
  RETURN '';
END;

$$ LANGUAGE 'plpgsql' VOLATILE;


Pete




On 3/6/07, Jasbinder Singh Bali <jsbali@gmail.com > wrote:
try replacing double quotes with single quotes and you should be fine i think
~Jas

 
On 3/5/07, Peter Schonefeld <peter.schonefeld@gmail.com > wrote:
Hi, could someone please let me know what i'm doing wrong here?

CREATE OR REPLACE FUNCTION sc_insert_row(char(32),text,varchar(32)) RETURNS text AS $$

DECLARE sql text;
BEGIN
  sql := "INSERT INTO "+ $3 +" ('id','body') VALUES ("+ $1 +","+ $2 +")";
  EXECUTE sql;
  RETURN '';
END;

$$ LANGUAGE 'plpgsql' VOLATILE;

I get the error: "ERROR: 42703: column \"INSERT INTO \" does not exist"

Cheers
Pete



В списке pgsql-novice по дате отправления:

Предыдущее
От: "Jasbinder Singh Bali"
Дата:
Сообщение: Re: help with dynamic table name
Следующее
От: Tom Lane
Дата:
Сообщение: Re: help with dynamic table name