aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/ecpg/lib/error.c
diff options
context:
space:
mode:
authorMichael Meskes <meskes@postgresql.org>2003-03-16 10:49:51 +0000
committerMichael Meskes <meskes@postgresql.org>2003-03-16 10:49:51 +0000
commitbb3730893b475bbf84fbde79918ddda9f31dc550 (patch)
treeb74b752bed83ee1245d7315ac4559ccb0373836e /src/interfaces/ecpg/lib/error.c
parenta4f25b6a9c2dbf5f38e498922e3761cb3bf46ba0 (diff)
downloadpostgresql-bb3730893b475bbf84fbde79918ddda9f31dc550.tar.gz
postgresql-bb3730893b475bbf84fbde79918ddda9f31dc550.zip
Forgot some files...
Diffstat (limited to 'src/interfaces/ecpg/lib/error.c')
-rw-r--r--src/interfaces/ecpg/lib/error.c198
1 files changed, 0 insertions, 198 deletions
diff --git a/src/interfaces/ecpg/lib/error.c b/src/interfaces/ecpg/lib/error.c
deleted file mode 100644
index ba174baaa12..00000000000
--- a/src/interfaces/ecpg/lib/error.c
+++ /dev/null
@@ -1,198 +0,0 @@
-/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/error.c,v 1.19 2003/02/14 13:17:13 meskes Exp $ */
-
-#include "postgres_fe.h"
-
-#include <stdio.h>
-
-#include "ecpgerrno.h"
-#include "ecpgtype.h"
-#include "ecpglib.h"
-#include "extern.h"
-#include "sqlca.h"
-
-/* This should hold the back-end error message from
- * the last back-end operation. */
-static char *ECPGerr;
-
-void
-ECPGraise(int line, int code, const char *str)
-{
- sqlca.sqlcode = code;
-
- switch (code)
- {
- case ECPG_NOT_FOUND:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "No data found in line %d.", line);
- break;
-
- case ECPG_OUT_OF_MEMORY:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Out of memory in line %d.", line);
- break;
-
- case ECPG_UNSUPPORTED:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Unsupported type %s in line %d.", str, line);
- break;
-
- case ECPG_TOO_MANY_ARGUMENTS:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Too many arguments in line %d.", line);
- break;
-
- case ECPG_TOO_FEW_ARGUMENTS:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Too few arguments in line %d.", line);
- break;
-
- case ECPG_INT_FORMAT:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Not correctly formatted int type: %s line %d.", str, line);
- break;
-
- case ECPG_UINT_FORMAT:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Not correctly formatted unsigned type: %s in line %d.", str, line);
- break;
-
- case ECPG_FLOAT_FORMAT:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Not correctly formatted floating-point type: %s in line %d.", str, line);
- break;
-
- case ECPG_CONVERT_BOOL:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Unable to convert %s to bool on line %d.", str, line);
- break;
-
- case ECPG_EMPTY:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Empty query in line %d.", line);
- break;
-
- case ECPG_MISSING_INDICATOR:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "NULL value without indicator in line %d.", line);
- break;
-
- case ECPG_NO_ARRAY:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Variable is not an array in line %d.", line);
- break;
-
- case ECPG_DATA_NOT_ARRAY:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Data read from backend is not an array in line %d.", line);
- break;
-
- case ECPG_ARRAY_INSERT:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Trying to insert an array of variables in line %d.", line);
- break;
-
- case ECPG_NO_CONN:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "No such connection %s in line %d.", str, line);
- break;
-
- case ECPG_NOT_CONN:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Not connected to '%s' in line %d.", str, line);
- break;
-
- case ECPG_INVALID_STMT:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Invalid statement name %s in line %d.", str, line);
- break;
-
- case ECPG_UNKNOWN_DESCRIPTOR:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Descriptor %s not found in line %d.", str, line);
- break;
-
- case ECPG_INVALID_DESCRIPTOR_INDEX:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Descriptor index out of range in line %d.", line);
- break;
-
- case ECPG_UNKNOWN_DESCRIPTOR_ITEM:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Unknown descriptor item %s in line %d.", str, line);
- break;
-
- case ECPG_VAR_NOT_NUMERIC:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Variable is not a numeric type in line %d.", line);
- break;
-
- case ECPG_VAR_NOT_CHAR:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Variable is not a character type in line %d.", line);
- break;
-
- case ECPG_PGSQL:
- {
- int slen = strlen(str);
-
- /* strip trailing newline */
- if (slen > 0 && str[slen - 1] == '\n')
- slen--;
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "'%.*s' in line %d.", slen, str, line);
- break;
- }
-
- case ECPG_TRANS:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Error in transaction processing in line %d.", line);
- break;
-
- case ECPG_CONNECT:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "Could not connect to database %s in line %d.", str, line);
- break;
-
- default:
- snprintf(sqlca.sqlerrm.sqlerrmc, sizeof(sqlca.sqlerrm.sqlerrmc),
- "SQL error #%d in line %d.", code, line);
- break;
- }
-
- sqlca.sqlerrm.sqlerrml = strlen(sqlca.sqlerrm.sqlerrmc);
- ECPGlog("raising sqlcode %d in line %d, '%s'.\n", code, line, sqlca.sqlerrm.sqlerrmc);
-
- /* free all memory we have allocated for the user */
- ECPGfree_auto_mem();
-}
-
-/* Set the error message string from the backend */
-void
-set_backend_err(const char *err, int lineno)
-{
- if (ECPGerr)
- ECPGfree(ECPGerr);
-
- if (!err)
- {
- ECPGerr = NULL;
- return;
- }
-
- ECPGerr = ECPGstrdup(err, lineno);
-}
-
-/* Retrieve the error message from the backend. */
-char *
-ECPGerrmsg(void)
-{
- return ECPGerr;
-}
-
-/* print out an error message */
-void
-sqlprint(void)
-{
- sqlca.sqlerrm.sqlerrmc[sqlca.sqlerrm.sqlerrml] = '\0';
- fprintf(stderr, "sql error %s\n", sqlca.sqlerrm.sqlerrmc);
-}