mirror of
https://github.com/postgres/postgres.git
synced 2025-09-03 15:22:11 +03:00
- Added some Informix error codes in Informix mode.
- Added just another pgtypeslib function.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/connect.c,v 1.12 2003/07/15 12:38:38 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/connect.c,v 1.13 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
#include "postgres_fe.h"
|
||||
@@ -116,7 +116,7 @@ ECPGsetcommit(int lineno, const char *mode, const char *connection_name)
|
||||
{
|
||||
if ((results = PQexec(con->connection, "begin transaction")) == NULL)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_TRANS, NULL);
|
||||
ECPGraise(lineno, ECPG_TRANS, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
PQclear(results);
|
||||
@@ -130,7 +130,7 @@ ECPGsetcommit(int lineno, const char *mode, const char *connection_name)
|
||||
{
|
||||
if ((results = PQexec(con->connection, "commit")) == NULL)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_TRANS, NULL);
|
||||
ECPGraise(lineno, ECPG_TRANS, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
PQclear(results);
|
||||
@@ -406,7 +406,7 @@ ECPGconnect(int lineno, int c, const char *name, const char *user, const char *p
|
||||
if (strncmp(dbname, "unix:", 5) != 0)
|
||||
{
|
||||
ECPGlog("connect: socketname %s given for TCP connection in line %d\n", host, lineno);
|
||||
ECPGraise(lineno, ECPG_CONNECT, realname ? realname : "<DEFAULT>");
|
||||
ECPGraise(lineno, ECPG_CONNECT, realname ? realname : "<DEFAULT>", ECPG_COMPAT_PGSQL);
|
||||
if (host)
|
||||
ECPGfree(host);
|
||||
if (port)
|
||||
@@ -429,7 +429,7 @@ ECPGconnect(int lineno, int c, const char *name, const char *user, const char *p
|
||||
if (strcmp(dbname + offset, "localhost") != 0 && strcmp(dbname + offset, "127.0.0.1") != 0)
|
||||
{
|
||||
ECPGlog("connect: non-localhost access via sockets in line %d\n", lineno);
|
||||
ECPGraise(lineno, ECPG_CONNECT, realname ? realname : "<DEFAULT>");
|
||||
ECPGraise(lineno, ECPG_CONNECT, realname ? realname : "<DEFAULT>", ECPG_COMPAT_PGSQL);
|
||||
if (host)
|
||||
ECPGfree(host);
|
||||
if (port)
|
||||
@@ -497,7 +497,7 @@ ECPGconnect(int lineno, int c, const char *name, const char *user, const char *p
|
||||
user ? "for user " : "", user ? user : "",
|
||||
lineno, errmsg);
|
||||
|
||||
ECPGraise(lineno, ECPG_CONNECT, db);
|
||||
ECPGraise(lineno, ECPG_CONNECT, db, ECPG_COMPAT_PGSQL);
|
||||
if (host)
|
||||
ECPGfree(host);
|
||||
if (port)
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/data.c,v 1.13 2003/07/18 14:32:56 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/data.c,v 1.14 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
#include "postgres_fe.h"
|
||||
@@ -34,7 +34,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
{
|
||||
if (*pval != '{')
|
||||
{
|
||||
ECPGraise(lineno, ECPG_DATA_NOT_ARRAY, NULL);
|
||||
ECPGraise(lineno, ECPG_DATA_NOT_ARRAY, NULL, compat);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -90,13 +90,13 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
}
|
||||
else
|
||||
{
|
||||
ECPGraise(lineno, ECPG_MISSING_INDICATOR, NULL);
|
||||
ECPGraise(lineno, ECPG_MISSING_INDICATOR, NULL, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
ECPGraise(lineno, ECPG_UNSUPPORTED, ECPGtype_name(ind_type));
|
||||
ECPGraise(lineno, ECPG_UNSUPPORTED, ECPGtype_name(ind_type), compat);
|
||||
return (false);
|
||||
break;
|
||||
}
|
||||
@@ -126,7 +126,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_INT_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_INT_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -159,7 +159,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_UINT_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_UINT_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -192,7 +192,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_INT_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_INT_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -209,7 +209,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_UINT_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_UINT_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -235,7 +235,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_FLOAT_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_FLOAT_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -266,7 +266,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
else if (offset == sizeof(int))
|
||||
*((int *) (var + offset * act_tuple)) = false;
|
||||
else
|
||||
ECPGraise(lineno, ECPG_CONVERT_BOOL, "different size");
|
||||
ECPGraise(lineno, ECPG_CONVERT_BOOL, "different size", compat);
|
||||
break;
|
||||
}
|
||||
else if (pval[0] == 't' && pval[1] == '\0')
|
||||
@@ -276,7 +276,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
else if (offset == sizeof(int))
|
||||
*((int *) (var + offset * act_tuple)) = true;
|
||||
else
|
||||
ECPGraise(lineno, ECPG_CONVERT_BOOL, "different size");
|
||||
ECPGraise(lineno, ECPG_CONVERT_BOOL, "different size", compat);
|
||||
break;
|
||||
}
|
||||
else if (pval[0] == '\0' && PQgetisnull(results, act_tuple, act_field))
|
||||
@@ -286,7 +286,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
}
|
||||
}
|
||||
|
||||
ECPGraise(lineno, ECPG_CONVERT_BOOL, pval);
|
||||
ECPGraise(lineno, ECPG_CONVERT_BOOL, pval, compat);
|
||||
return (false);
|
||||
break;
|
||||
|
||||
@@ -396,7 +396,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_NUMERIC_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_NUMERIC_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -423,7 +423,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_INTERVAL_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_INTERVAL_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
@@ -446,7 +446,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_DATE_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_DATE_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -468,7 +468,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
if ((isarray && *scan_length != ',' && *scan_length != '}')
|
||||
|| (!isarray && *scan_length != '\0' && *scan_length != ' ')) /* Garbage left */
|
||||
{
|
||||
ECPGraise(lineno, ECPG_TIMESTAMP_FORMAT, pval);
|
||||
ECPGraise(lineno, ECPG_TIMESTAMP_FORMAT, pval, compat);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -477,7 +477,7 @@ ECPGget_data(const PGresult *results, int act_tuple, int act_field, int lineno,
|
||||
break;
|
||||
|
||||
default:
|
||||
ECPGraise(lineno, ECPG_UNSUPPORTED, ECPGtype_name(type));
|
||||
ECPGraise(lineno, ECPG_UNSUPPORTED, ECPGtype_name(type), compat);
|
||||
return (false);
|
||||
break;
|
||||
}
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/* dynamic SQL support routines
|
||||
*
|
||||
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/descriptor.c,v 1.3 2003/06/15 04:07:58 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/descriptor.c,v 1.4 2003/08/01 08:21:04 meskes Exp $
|
||||
*/
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
@@ -103,7 +103,7 @@ get_int_item(int lineno, void *var, enum ECPGttype vartype, int value)
|
||||
*(double *) var = (double) value;
|
||||
break;
|
||||
default:
|
||||
ECPGraise(lineno, ECPG_VAR_NOT_NUMERIC, NULL);
|
||||
ECPGraise(lineno, ECPG_VAR_NOT_NUMERIC, NULL, ECPG_COMPAT_PGSQL);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -135,7 +135,7 @@ get_char_item(int lineno, void *var, enum ECPGttype vartype, char *value, int va
|
||||
}
|
||||
break;
|
||||
default:
|
||||
ECPGraise(lineno, ECPG_VAR_NOT_CHAR, NULL);
|
||||
ECPGraise(lineno, ECPG_VAR_NOT_CHAR, NULL, ECPG_COMPAT_PGSQL);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -162,13 +162,13 @@ ECPGget_desc(int lineno, char *desc_name, int index,...)
|
||||
ntuples = PQntuples(ECPGresult);
|
||||
if (ntuples < 1)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_NOT_FOUND, NULL);
|
||||
ECPGraise(lineno, ECPG_NOT_FOUND, NULL, ECPG_COMPAT_PGSQL);
|
||||
return (false);
|
||||
}
|
||||
|
||||
if (index < 1 || index > PQnfields(ECPGresult))
|
||||
{
|
||||
ECPGraise(lineno, ECPG_INVALID_DESCRIPTOR_INDEX, NULL);
|
||||
ECPGraise(lineno, ECPG_INVALID_DESCRIPTOR_INDEX, NULL, ECPG_COMPAT_PGSQL);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -300,7 +300,7 @@ ECPGget_desc(int lineno, char *desc_name, int index,...)
|
||||
{
|
||||
ECPGlog("ECPGget_desc line %d: Incorrect number of matches: %d don't fit into array of %d\n",
|
||||
lineno, ntuples, arrsize);
|
||||
ECPGraise(lineno, ECPG_TOO_MANY_MATCHES, NULL);
|
||||
ECPGraise(lineno, ECPG_TOO_MANY_MATCHES, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
/* allocate storage if needed */
|
||||
@@ -324,7 +324,7 @@ ECPGget_desc(int lineno, char *desc_name, int index,...)
|
||||
|
||||
default:
|
||||
snprintf(type_str, sizeof(type_str), "%d", type);
|
||||
ECPGraise(lineno, ECPG_UNKNOWN_DESCRIPTOR_ITEM, type_str);
|
||||
ECPGraise(lineno, ECPG_UNKNOWN_DESCRIPTOR_ITEM, type_str, ECPG_COMPAT_PGSQL);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -361,7 +361,7 @@ ECPGget_desc(int lineno, char *desc_name, int index,...)
|
||||
{
|
||||
ECPGlog("ECPGget_desc line %d: Incorrect number of matches (indicator): %d don't fit into array of %d\n",
|
||||
lineno, ntuples, data_var.ind_arrsize);
|
||||
ECPGraise(lineno, ECPG_TOO_MANY_MATCHES, NULL);
|
||||
ECPGraise(lineno, ECPG_TOO_MANY_MATCHES, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
/* allocate storage if needed */
|
||||
@@ -404,7 +404,7 @@ ECPGdeallocate_desc(int line, const char *name)
|
||||
return true;
|
||||
}
|
||||
}
|
||||
ECPGraise(line, ECPG_UNKNOWN_DESCRIPTOR, name);
|
||||
ECPGraise(line, ECPG_UNKNOWN_DESCRIPTOR, name, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -430,7 +430,7 @@ ECPGallocate_desc(int line, const char *name)
|
||||
{
|
||||
ECPGfree(new->name);
|
||||
ECPGfree(new);
|
||||
ECPGraise(line, ECPG_OUT_OF_MEMORY, NULL);
|
||||
ECPGraise(line, ECPG_OUT_OF_MEMORY, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
strcpy(new->name, name);
|
||||
@@ -449,7 +449,7 @@ ECPGdescriptor_lvalue(int line, const char *descriptor)
|
||||
return &i->result;
|
||||
}
|
||||
|
||||
ECPGraise(line, ECPG_UNKNOWN_DESCRIPTOR, (char *) descriptor);
|
||||
ECPGraise(line, ECPG_UNKNOWN_DESCRIPTOR, (char *) descriptor, ECPG_COMPAT_PGSQL);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/error.c,v 1.3 2003/07/15 12:38:38 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/error.c,v 1.4 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
#include "postgres_fe.h"
|
||||
@@ -12,7 +12,7 @@
|
||||
#include "sqlca.h"
|
||||
|
||||
void
|
||||
ECPGraise(int line, int code, const char *str)
|
||||
ECPGraise(int line, int code, const char *str, int compat)
|
||||
{
|
||||
struct sqlca_t *sqlca = ECPGget_sqlca();
|
||||
sqlca->sqlcode = code;
|
||||
@@ -139,9 +139,9 @@ ECPGraise(int line, int code, const char *str)
|
||||
snprintf(sqlca->sqlerrm.sqlerrmc, sizeof(sqlca->sqlerrm.sqlerrmc),
|
||||
"'%.*s' in line %d.", slen, str, line);
|
||||
if (strncmp(str, "ERROR: Cannot insert a duplicate key", strlen("ERROR: Cannot insert a duplicate key")) == 0)
|
||||
sqlca->sqlcode = ECPG_DUPLICATE_KEY;
|
||||
sqlca->sqlcode = INFORMIX_MODE(compat) ? ECPG_INFORMIX_DUPLICATE_KEY : ECPG_DUPLICATE_KEY;
|
||||
else if (strncmp(str, "ERROR: More than one tuple returned by a subselect", strlen("ERROR: More than one tuple returned by a subselect")) == 0)
|
||||
sqlca->sqlcode = ECPG_SUBSELECT_NOT_ONE;
|
||||
sqlca->sqlcode = INFORMIX_MODE(compat) ? ECPG_INFORMIX_SUBSELECT_NOT_ONE : ECPG_SUBSELECT_NOT_ONE;
|
||||
|
||||
break;
|
||||
}
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/execute.c,v 1.20 2003/07/25 16:10:26 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/execute.c,v 1.21 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
/*
|
||||
* The aim is to get a simpler inteface to the database routines.
|
||||
@@ -124,7 +124,7 @@ create_statement(int lineno, int compat, int force_indicator, struct connection
|
||||
/* if variable is NULL, the statement hasn't been prepared */
|
||||
if (var->pointer == NULL)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_INVALID_STMT, NULL);
|
||||
ECPGraise(lineno, ECPG_INVALID_STMT, NULL, compat);
|
||||
ECPGfree(var);
|
||||
return false;
|
||||
}
|
||||
@@ -351,7 +351,7 @@ ECPGstore_result(const PGresult *results, int act_field,
|
||||
{
|
||||
ECPGlog("ECPGexecute line %d: Incorrect number of matches: %d don't fit into array of %d\n",
|
||||
stmt->lineno, ntuples, var->arrsize);
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_MANY_MATCHES, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_MANY_MATCHES, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -362,7 +362,7 @@ ECPGstore_result(const PGresult *results, int act_field,
|
||||
*/
|
||||
if (var->arrsize == 0)
|
||||
{
|
||||
ECPGraise(stmt->lineno, ECPG_NO_ARRAY, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_NO_ARRAY, NULL, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -484,7 +484,7 @@ ECPGstore_input(const struct statement * stmt, const struct variable * var,
|
||||
|
||||
/* if (var->arrsize > 1 && ...)
|
||||
{
|
||||
ECPGraise(stmt->lineno, ECPG_ARRAY_INSERT, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_ARRAY_INSERT, NULL, compat);
|
||||
return false;
|
||||
}*/
|
||||
|
||||
@@ -757,7 +757,7 @@ ECPGstore_input(const struct statement * stmt, const struct variable * var,
|
||||
for (element = 0; element < var->arrsize; element++)
|
||||
sprintf(mallocedval + strlen(mallocedval), "%c,", (((int *) var->value)[element]) ? 't' : 'f');
|
||||
else
|
||||
ECPGraise(stmt->lineno, ECPG_CONVERT_BOOL, "different size");
|
||||
ECPGraise(stmt->lineno, ECPG_CONVERT_BOOL, "different size", ECPG_COMPAT_PGSQL);
|
||||
|
||||
strcpy(mallocedval + strlen(mallocedval) - 1, "]");
|
||||
}
|
||||
@@ -768,7 +768,7 @@ ECPGstore_input(const struct statement * stmt, const struct variable * var,
|
||||
else if (var->offset == sizeof(int))
|
||||
sprintf(mallocedval, "'%c'", (*((int *) var->value)) ? 't' : 'f');
|
||||
else
|
||||
ECPGraise(stmt->lineno, ECPG_CONVERT_BOOL, "different size");
|
||||
ECPGraise(stmt->lineno, ECPG_CONVERT_BOOL, "different size", ECPG_COMPAT_PGSQL);
|
||||
}
|
||||
|
||||
*tobeinserted_p = mallocedval;
|
||||
@@ -1021,7 +1021,7 @@ ECPGstore_input(const struct statement * stmt, const struct variable * var,
|
||||
|
||||
default:
|
||||
/* Not implemented yet */
|
||||
ECPGraise(stmt->lineno, ECPG_UNSUPPORTED, (char *) ECPGtype_name(var->type));
|
||||
ECPGraise(stmt->lineno, ECPG_UNSUPPORTED, (char *) ECPGtype_name(var->type), ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
@@ -1073,7 +1073,7 @@ ECPGexecute(struct statement * stmt)
|
||||
* We have an argument but we dont have the matched up string
|
||||
* in the string
|
||||
*/
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_MANY_ARGUMENTS, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_MANY_ARGUMENTS, NULL, stmt->compat);
|
||||
return false;
|
||||
}
|
||||
else
|
||||
@@ -1111,7 +1111,7 @@ ECPGexecute(struct statement * stmt)
|
||||
/* Check if there are unmatched things left. */
|
||||
if (next_insert(copiedquery) != NULL)
|
||||
{
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_FEW_ARGUMENTS, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_FEW_ARGUMENTS, NULL, stmt->compat);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1121,7 +1121,7 @@ ECPGexecute(struct statement * stmt)
|
||||
{
|
||||
if ((results = PQexec(stmt->connection->connection, "begin transaction")) == NULL)
|
||||
{
|
||||
ECPGraise(stmt->lineno, ECPG_TRANS, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_TRANS, NULL, stmt->compat);
|
||||
return false;
|
||||
}
|
||||
PQclear(results);
|
||||
@@ -1136,7 +1136,7 @@ ECPGexecute(struct statement * stmt)
|
||||
{
|
||||
errmsg = PQerrorMessage(stmt->connection->connection);
|
||||
ECPGlog("ECPGexecute line %d: error: %s", stmt->lineno, errmsg);
|
||||
ECPGraise(stmt->lineno, ECPG_PGSQL, errmsg);
|
||||
ECPGraise(stmt->lineno, ECPG_PGSQL, errmsg, stmt->compat);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -1167,7 +1167,7 @@ ECPGexecute(struct statement * stmt)
|
||||
if (ntuples)
|
||||
ECPGlog("ECPGexecute line %d: Incorrect number of matches: %d\n",
|
||||
stmt->lineno, ntuples);
|
||||
ECPGraise(stmt->lineno, ECPG_NOT_FOUND, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_NOT_FOUND, NULL, stmt->compat);
|
||||
status = false;
|
||||
break;
|
||||
}
|
||||
@@ -1198,21 +1198,21 @@ ECPGexecute(struct statement * stmt)
|
||||
}
|
||||
else if (!INFORMIX_MODE(stmt->compat))
|
||||
{
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_FEW_ARGUMENTS, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_FEW_ARGUMENTS, NULL, stmt->compat);
|
||||
return (false);
|
||||
}
|
||||
}
|
||||
|
||||
if (status && var != NULL)
|
||||
{
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_MANY_ARGUMENTS, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_TOO_MANY_ARGUMENTS, NULL, stmt->compat);
|
||||
status = false;
|
||||
}
|
||||
|
||||
break;
|
||||
case PGRES_EMPTY_QUERY:
|
||||
/* do nothing */
|
||||
ECPGraise(stmt->lineno, ECPG_EMPTY, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_EMPTY, NULL, stmt->compat);
|
||||
break;
|
||||
case PGRES_COMMAND_OK:
|
||||
status = true;
|
||||
@@ -1225,13 +1225,13 @@ ECPGexecute(struct statement * stmt)
|
||||
( !strncmp(cmdstat, "UPDATE", 6)
|
||||
|| !strncmp(cmdstat, "INSERT", 6)
|
||||
|| !strncmp(cmdstat, "DELETE", 6)))
|
||||
ECPGraise(stmt->lineno, ECPG_NOT_FOUND, NULL);
|
||||
ECPGraise(stmt->lineno, ECPG_NOT_FOUND, NULL, stmt->compat);
|
||||
break;
|
||||
case PGRES_NONFATAL_ERROR:
|
||||
case PGRES_FATAL_ERROR:
|
||||
case PGRES_BAD_RESPONSE:
|
||||
ECPGlog("ECPGexecute line %d: Error: %s", stmt->lineno, errmsg);
|
||||
ECPGraise(stmt->lineno, ECPG_PGSQL, errmsg);
|
||||
ECPGraise(stmt->lineno, ECPG_PGSQL, errmsg, stmt->compat);
|
||||
status = false;
|
||||
break;
|
||||
case PGRES_COPY_OUT:
|
||||
@@ -1245,7 +1245,7 @@ ECPGexecute(struct statement * stmt)
|
||||
default:
|
||||
ECPGlog("ECPGexecute line %d: Got something else, postgres error.\n",
|
||||
stmt->lineno);
|
||||
ECPGraise(stmt->lineno, ECPG_PGSQL, errmsg);
|
||||
ECPGraise(stmt->lineno, ECPG_PGSQL, errmsg, stmt->compat);
|
||||
status = false;
|
||||
break;
|
||||
}
|
||||
@@ -1300,7 +1300,7 @@ ECPGdo(int lineno, int compat, int force_indicator, const char *connection_name,
|
||||
if (con == NULL || con->connection == NULL)
|
||||
{
|
||||
free_statement(stmt);
|
||||
ECPGraise(lineno, ECPG_NOT_CONN, (con) ? con->name : "<empty>");
|
||||
ECPGraise(lineno, ECPG_NOT_CONN, (con) ? con->name : "<empty>", stmt->compat);
|
||||
setlocale(LC_NUMERIC, oldlocale);
|
||||
ECPGfree(oldlocale);
|
||||
return false;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/memory.c,v 1.2 2003/06/15 04:07:58 momjian Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/memory.c,v 1.3 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
#include "postgres_fe.h"
|
||||
@@ -21,7 +21,7 @@ ECPGalloc(long size, int lineno)
|
||||
|
||||
if (!new)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_OUT_OF_MEMORY, NULL);
|
||||
ECPGraise(lineno, ECPG_OUT_OF_MEMORY, NULL, ECPG_COMPAT_PGSQL);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ ECPGrealloc(void *ptr, long size, int lineno)
|
||||
|
||||
if (!new)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_OUT_OF_MEMORY, NULL);
|
||||
ECPGraise(lineno, ECPG_OUT_OF_MEMORY, NULL, ECPG_COMPAT_PGSQL);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ ECPGstrdup(const char *string, int lineno)
|
||||
|
||||
if (!new)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_OUT_OF_MEMORY, NULL);
|
||||
ECPGraise(lineno, ECPG_OUT_OF_MEMORY, NULL, ECPG_COMPAT_PGSQL);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/misc.c,v 1.10 2003/07/17 07:54:29 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/misc.c,v 1.11 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
#include "postgres_fe.h"
|
||||
@@ -103,7 +103,7 @@ ECPGinit(const struct connection * con, const char *connection_name, const int l
|
||||
ECPGinit_sqlca(sqlca);
|
||||
if (con == NULL)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_NO_CONN, connection_name ? connection_name : "NULL");
|
||||
ECPGraise(lineno, ECPG_NO_CONN, connection_name ? connection_name : "NULL", ECPG_COMPAT_PGSQL);
|
||||
return (false);
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ ECPGstatus(int lineno, const char *connection_name)
|
||||
/* are we connected? */
|
||||
if (con->connection == NULL)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_NOT_CONN, con->name);
|
||||
ECPGraise(lineno, ECPG_NOT_CONN, con->name, ECPG_COMPAT_PGSQL);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -179,7 +179,7 @@ ECPGtrans(int lineno, const char *connection_name, const char *transaction)
|
||||
{
|
||||
if ((res = PQexec(con->connection, transaction)) == NULL)
|
||||
{
|
||||
ECPGraise(lineno, ECPG_TRANS, NULL);
|
||||
ECPGraise(lineno, ECPG_TRANS, NULL, ECPG_COMPAT_PGSQL);
|
||||
return FALSE;
|
||||
}
|
||||
PQclear(res);
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/prepare.c,v 1.6 2003/07/14 10:16:44 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/prepare.c,v 1.7 2003/08/01 08:21:04 meskes Exp $ */
|
||||
|
||||
#define POSTGRES_ECPG_INTERNAL
|
||||
#include "postgres_fe.h"
|
||||
@@ -120,7 +120,7 @@ ECPGdeallocate(int lineno, int c, char *name)
|
||||
}
|
||||
|
||||
if (!ret)
|
||||
ECPGraise(lineno, ECPG_INVALID_STMT, name);
|
||||
ECPGraise(lineno, ECPG_INVALID_STMT, name, ECPG_COMPAT_PGSQL);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
Reference in New Issue
Block a user