dbd/postgresql/dbd_postgresql.h

Fri, 29 Jun 2012 17:45:37 +0100

author
Matthew Wild <mwild1@gmail.com>
date
Fri, 29 Jun 2012 17:45:37 +0100
changeset 45
7c968f66bccd
parent 33
6c64c45e7d8f
permissions
-rw-r--r--

MySQL: Avoid allocating the full column size to receive results, for variable-length types check result size before allocation (thanks Florob)

#include <libpq-fe.h>
#include <postgres_fe.h>
#include <dbd/common.h>

/* 
 * length of a prepared statement ID
 * dbd-postgresql-\d{17}\0
 */
#define IDLEN 15+17+1

#define DBD_POSTGRESQL_CONNECTION   "DBD.PostgreSQL.Connection"
#define DBD_POSTGRESQL_STATEMENT    "DBD.PostgreSQL.Statement"

/*
 * connection object implentation
 */
typedef struct _connection {
    PGconn *postgresql;
    int autocommit;
    unsigned int statement_id; /* sequence for statement IDs */
} connection_t;

/*
 * statement object implementation
 */
typedef struct _statement {
    PGconn *postgresql;
    PGresult *result;
    char name[IDLEN]; /* statement ID */
    int tuple; /* number of rows returned */
} statement_t;

mercurial