Re: Bound parameter is not substituted
От | Adrian Klaver |
---|---|
Тема | Re: Bound parameter is not substituted |
Дата | |
Msg-id | 200904160720.19407.aklaver@comcast.net обсуждение исходный текст |
Ответ на | Bound parameter is not substituted (ning <mailxiening@gmail.com>) |
Список | pgsql-odbc |
On Thursday 16 April 2009 1:02:56 am ning wrote: > Hello all, > > I am trying to create a stored function through ODBC connection, > But the parameter marker inside the function is not substituted. > In the following snippet, '?' is not substituted, and I got a syntax > error around it. > If I replace the '?' with '2', it is OK. > The psqlodbc I am using is 08.02.0400 together with unixODBC:2.2.12 on > OpenSUSE 10.3. > Is there a solution or workaround? > > Thank you. > > -------------- > std::stringstream ss; > ss << > "create or replace function plpgsql_setDocAttrs() returns > void as $$ " > "declare " > "pid integer; " > "begin " > "pid := ?; " // parameter marker > "end;" > "$$ language plpgsql volatile;" > "select plpgsql_setDocAttrs();"; > // prepare statement handler > Stmt stmt(); > // prepare the statement > stmt.prepare(ss.str()); > stmt.bindNextParameter( > SQL_PARAM_INPUT, > SQL_C_LONG, > SQL_INTEGER, > 0, > 0, > &id, > 0, > 0); > stmt.execute(); > --------------- > > ning Might want to take a look at this: http://www.commandprompt.com/blogs/joshua_drake/2009/04/escaping_data_madness/ -- Adrian Klaver aklaver@comcast.net
В списке pgsql-odbc по дате отправления: