PQsendf man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

PQexecf(3)		       libpqtypes Manual		    PQexecf(3)

NAME
       PQexecf - Prepares parameters and executes a command.

SYNOPSIS
       #include <libpqtypes.h>

       PGresult *PQexecf(const PGconn *conn, const char *cmd, ...);
       PGresult *PQexecvf(const PGconn *conn, const char *cmd, va_list ap);
       int PQsendf(const PGconn *conn, const char *cmd, ...);
       int PQsendvf(const PGconn *conn, const char *cmd, va_list ap);

DESCRIPTION
       The  PQexecf()  function	 executes  a command that uses libpqtypes type
       specifiers instead of $1, $2, etc... syntax.  The idea  is  to  combine
       PQputvf()  and PQparamExec() into a single call.	 The variable argument
       list must match the type specs listed within the cmd. The  type	speci‐
       fiers should be placed where one would normally place $1, $2, etc...

       The  PQexecvf()	function  is  identical to PQexecf() except it takes a
       va_list.

       The PQsendf() and PQsendvf() functions are identical to	PQexecf()  and
       PQexecvf() except they are asynchronous versions, meaning an additional
       call, PQgetResult, must be issued to get the PGresult object.  For more
       information,  see the PostgreSQL Documentation: specifically the "Asyn‐
       chronous Command Processing" section under "Client Interfaces | libpq -
       C library".

       A  prepared type spec "@name" can be used with these functions, granted
       that PQspecPrepare() was called with a non-zero value for  the  is_stmt
       argument.  These functions needs an actual SQL statement to execute.

RETURN VALUE
       PQexecf	and PQexecvf return NULL on error and a valid PGresult on suc‐
       cess.  PQsendf and PQsendvf return zero on error and a  non-zero	 value
       on success.  On error, use PQgeterror(3) to obtain an error message.

EXAMPLES
   Using PQexecf
       The example uses PQexecf function to execute a query.

	      /* The PQexecf call is shorthand for:
	       *
	       *   PGparam *param = PQparamCreate(conn);
	       *   PQputf(param, "%int4 %int4", 1, 1);
	       *   res = PQparamExec(conn, param, "SELECT $1 + $2", 1);
	       *   PQparamClear(param);
	       *
	       * As you may notice, PQexecf makes life much simpler.
	       */
	      PGresult *res = PQexecf(conn, "SELECT %int4 + %int4", 1, 1);

	      if(!res)
		   fprintf(stderr, "PQexecf failed: %s", PQgeterror());
	      else
		   PQclear(res);

	      /* A bit more common, this puts an int4 and a text into a generated
	       * PGparam and then executes 'myfunc($1, $2)'
	       */
	      res = PQexecf(conn, "SELECT * FROM myfunc(%int4, %text)", 2, "abc");

	      /* Prepared type spec example.  To use with execf, the final "is_stmt"
	       * argument must be set to a non-zero value!
	       */
	      PQspecPrepare(conn, "account_insert", "INSERT INTO account VALUES "
		   "(%int8, %text, %int4)", 1);

	      PGint8 acc_id = 78236;
	      PGtext acc_name = "ABC Coders, LLC.";
	      PGint4 acc_biz = ACC_BIZ_TECHNOLOGY;

	      PQexecf(conn, "@account_insert", acc_id, acc_name, acc_biz);

AUTHOR
       A  contribution	of  eSilo, LLC. for the PostgreSQL Database Management
       System.	Written by Andrew Chernow and Merlin Moncure.

REPORTING BUGS
       Report bugs to <libpqtypes@esilo.com>.

COPYRIGHT
       Copyright (c) 2011 eSilo, LLC. All rights reserved.
       This is free software; see the source for copying conditions.  There is
       NO  warranty; not even for MERCHANTABILITY or  FITNESS FOR A PARTICULAR
       PURPOSE.

SEE ALSO
       PQgeterror(3), PQputvf(3), PQparamExec(3)

libpqtypes			     2011			    PQexecf(3)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net