SPI_cursor_open_with_args
SPI_cursor_open_with_args â оÑкÑÑÐ²Ð°ÐµÑ ÐºÑÑÑÐ¾Ñ Ð´Ð»Ñ Ð·Ð°Ð¿ÑоÑа Ñ Ð¿Ð°ÑамеÑÑами
СинÑакÑиÑ
Portal SPI_cursor_open_with_args(const char *name, const char *command, intnargs, Oid *argtypes, Datum *values, const char *nulls, boolread_only, intcursorOptions)
ÐпиÑание
SPI_cursor_open_with_args оÑкÑÑÐ²Ð°ÐµÑ ÐºÑÑÑÐ¾Ñ (внÑÑÑи назÑваемÑй поÑÑалом) Ð´Ð»Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ запÑоÑа. ÐолÑÑинÑÑво паÑамеÑÑов имеÑÑ ÑÐ¾Ñ Ð¶Ðµ ÑмÑÑл, ÑÑо и ÑооÑвеÑÑÑвÑÑÑие паÑамеÑÑÑ ÑÑнкÑий SPI_prepare_cursor и SPI_cursor_open.
ÐÐ»Ñ Ñазового вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð·Ð°Ð¿ÑоÑа ÑÑÑ ÑÑнкÑÐ¸Ñ ÑледÑÐµÑ Ð¿ÑедпоÑеÑÑÑ SPI_prepare_cursor Ñ Ð¿Ð¾ÑледÑÑÑей SPI_cursor_open. ÐÑли же одна и Ñа же команда должна вÑполнÑÑÑÑÑ Ñ ÑамÑми ÑазнÑми паÑамеÑÑами, какой ваÑÐ¸Ð°Ð½Ñ Ð¾ÐºÐ°Ð¶ÐµÑÑÑ Ð±ÑÑÑÑее, бÑÐ´ÐµÑ Ð·Ð°Ð²Ð¸ÑеÑÑ Ð¾Ñ ÑÑоимоÑÑи повÑоÑного планиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ вÑигÑÑÑа Ð¾Ñ Ð²ÑбоÑа ÑпеÑиализиÑованнÑÑ
планов.
ÐеÑеданнÑе знаÑÐµÐ½Ð¸Ñ Ð¿Ð°ÑамеÑÑов копиÑÑÑÑÑÑ Ð² поÑÑал кÑÑÑоÑа, Ñак ÑÑо Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾ оÑвободиÑÑ Ð¸ во вÑÐµÐ¼Ñ ÑÑÑеÑÑÐ²Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÑÑÑоÑа.
ÐÑгÑменÑÑ
const char *nameÐ¸Ð¼Ñ Ð¿Ð¾ÑÑала, либо
NULL, ÑÑÐ¾Ð±Ñ Ð¸Ð¼Ñ Ð²ÑбÑала ÑиÑÑемаconst char *commandÑÑÑока командÑ
intnargsÑиÑло Ð²Ñ Ð¾Ð´Ð½ÑÑ Ð¿Ð°ÑамеÑÑов (
$1,$2и Ñ. д.)Oid *argtypesмаÑÑив ÑазмеÑа
nargs, ÑодеÑжаÑий OID Ñипов паÑамеÑÑовDatum *valuesмаÑÑив ÑазмеÑа
nargs, ÑодеÑжаÑий ÑакÑиÑеÑкие знаÑÐµÐ½Ð¸Ñ Ð¿Ð°ÑамеÑÑовconst char *nullsмаÑÑив ÑазмеÑа
nargs, опиÑÑваÑÑий, в ÐºÐ°ÐºÐ¸Ñ Ð¿Ð°ÑамеÑÑÐ°Ñ Ð¿ÐµÑедаÑÑÑÑ NULLÐÑли в
nullsпеÑедаÑÑÑÑNULL,SPI_cursor_open_with_argsÑÑиÑаеÑ, ÑÑо ни один из паÑамеÑÑов не Ñавен NULL. РпÑоÑивном ÑлÑÑае ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð¼Ð°ÑÑиваnullsдолжен ÑодеÑжаÑÑ' ', еÑли знаÑение ÑооÑвеÑÑÑвÑÑÑего паÑамеÑÑа не NULL, либо'n', еÑли ÑÑо знаÑение â NULL. (РпоÑледнем ÑлÑÑае знаÑение, пеÑеданное в ÑооÑвеÑÑÑвÑÑÑем ÑлеменÑеvalues, не ÑÑиÑÑваеÑÑÑ.) ÐамеÑÑÑе, ÑÑоnullsâ ÑÑо не ÑекÑÑÐ¾Ð²Ð°Ñ ÑÑÑока, а пÑоÑÑо маÑÑив: Ð½Ð¾Ð»Ñ ('\0') в конÑе не нÑжен.boolread_onlytrueÐ´Ð»Ñ Ñежима вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Â«ÑолÑко ÑÑение»intcursorOptionsбиÑÐ¾Ð²Ð°Ñ Ð¼Ð°Ñка паÑамеÑÑов кÑÑÑоÑа; 0 вÑбиÑÐ°ÐµÑ Ð¿Ð¾Ð²ÐµÐ´ÐµÐ½Ð¸Ðµ по ÑмолÑаниÑ
ÐозвÑаÑаемое знаÑение
УказаÑÐµÐ»Ñ Ð½Ð° поÑÑал, ÑодеÑжаÑий кÑÑÑоÑ. ÐамеÑÑÑе, ÑÑо ÑоглаÑение о возвÑаÑе оÑибок оÑÑÑÑÑÑвÑеÑ; вÑе оÑибки вÑдаÑÑÑÑ ÑеÑез elog.