|
|
| version 1.36, 2011/03/11 07:57:42 | version 1.40, 2012/06/08 14:42:37 |
|---|---|
| Line 1 | Line 1 |
| /** @file | /** @file |
| Parser PgSQL driver. | Parser PgSQL driver. |
| Copyright(c) 2001, 2003 ArtLebedev Group (http://www.artlebedev.com) | Copyright (c) 2001-2012 Art. Lebedev Studio (http://www.artlebedev.com) |
| Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru) | Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru) |
| 2007.10.25 using PgSQL 8.1.5 | 2007.10.25 using PgSQL 8.1.5 |
| */ | */ |
| static const char *RCSId="$Id$"; | |
| #include "config_includes.h" | #include "config_includes.h" |
| Line 16 static const char *RCSId="$Id$"; | Line 15 static const char *RCSId="$Id$"; |
| #include <libpq-fe.h> | #include <libpq-fe.h> |
| #include <libpq/libpq-fs.h> | #include <libpq/libpq-fs.h> |
| volatile const char * IDENT_PARSER3PGSQL_C="$Id$" IDENT_PA_SQL_DRIVER_H; | |
| // from catalog/pg_type.h | // from catalog/pg_type.h |
| #define BOOLOID 16 | #define BOOLOID 16 |
| #define INT8OID 20 | #define INT8OID 20 |
| Line 200 public: | Line 201 public: |
| } | } |
| if(charset){ | if(charset){ |
| char statement[MAX_STRING]="SET CLIENT_ENCODING="; | char statement[MAX_STRING+1]="SET CLIENT_ENCODING="; |
| strncat(statement, charset, MAX_STRING); | strncat(statement, charset, MAX_STRING); |
| _execute_cmd(connection, statement); | _execute_cmd(connection, statement); |
| } | } |
| if(datestyle){ | if(datestyle){ |
| char statement[MAX_STRING]="SET DATESTYLE="; | char statement[MAX_STRING+1]="SET DATESTYLE="; |
| strncat(statement, datestyle, MAX_STRING); | strncat(statement, datestyle, MAX_STRING); |
| _execute_cmd(connection, statement); | _execute_cmd(connection, statement); |
| Line 545 private: | Line 546 private: |
| char *cur=result; | char *cur=result; |
| memcpy(cur, astatement, statement_size); cur+=statement_size; | memcpy(cur, astatement, statement_size); cur+=statement_size; |
| if(limit!=SQL_NO_LIMIT) | if(limit!=SQL_NO_LIMIT) |
| cur+=snprintf(cur, 7+MAX_NUMBER, " limit %u", limit); | cur+=snprintf(cur, 7+MAX_NUMBER, " limit %lu", limit); |
| if(offset) | if(offset) |
| cur+=snprintf(cur, 8+MAX_NUMBER, " offset %u", offset); | cur+=snprintf(cur, 8+MAX_NUMBER, " offset %lu", offset); |
| o=result; | o=result; |
| } else | } else |
| o=astatement; | o=astatement; |