On 05/24/2018 02:30 AM, Chapman Flack wrote: > In 9.0, there's SPI_prepare_params, which seems promising; it accepts > an arbitrary ParserSetupHook "to control the parsing of external parameter > references." But its documentation doesn't suggest what to use as the > ParserSetupHook to say "please just do the same stuff you would do if > I were a client sending a Parse message with unspecified parameter types!" > > Perhaps I just need something like > > struct varparinfo { Oid *paramTypes, int numParams } vpi = {palloc(0), 0}; > > static void inferringSetupHook(struct ParseState *pstate, void *arg) > { > struct varparinfo *vpi = (struct varparinfo *)arg; > parse_variable_parameters(pstate, &vpi->paramTypes, &vpi->numParams); > } > > SPI_prepare_params("SELECT $1", inferringSetupHook, &vpi, 0);
Am I on the right track here? Is what I'm looking to do something that became possible in SPI in 9.0 and wasn't before, or did I overlook a way it could have been done pre-9.0 ? Thanks, -Chap