diff options
| author | Frank M. Kromann <fmk@php.net> | 2001-03-22 21:16:23 +0000 |
|---|---|---|
| committer | Frank M. Kromann <fmk@php.net> | 2001-03-22 21:16:23 +0000 |
| commit | 8bea574877122fbb99af633bf09e825c1b59aa4d (patch) | |
| tree | 4cdf009899aa72ea36389932a6e59cd84029c345 /ext/fbsql/php_fbsql.c | |
| parent | 4549e389bb9309617e69339d0da85523bcd451f4 (diff) | |
| download | php-git-8bea574877122fbb99af633bf09e825c1b59aa4d.tar.gz | |
Adding warning when query fails
Diffstat (limited to 'ext/fbsql/php_fbsql.c')
| -rw-r--r-- | ext/fbsql/php_fbsql.c | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/ext/fbsql/php_fbsql.c b/ext/fbsql/php_fbsql.c index 28992c5b04..7d62b83f11 100644 --- a/ext/fbsql/php_fbsql.c +++ b/ext/fbsql/php_fbsql.c @@ -788,7 +788,6 @@ PHPFBDatabase* phpfbSelectDB fbcdcClose(c); fbcdcRelease(c); free(result); -/* printf("Returning Null\n"); */ return NULL; } result->retainCount = 2; @@ -813,7 +812,6 @@ PHPFBDatabase* phpfbSelectDB link->databases[i] = result; FB_SQL_G(databaseCount)++; -/* printf("Return database %x %x\n",result,c); */ } link->currentDatabase = result; return_value->value.lval = result->index; @@ -1515,6 +1513,26 @@ PHPFBResult* phpfbQuery(INTERNAL_FUNCTION_PARAMETERS, char* sql, PHPFBDatabase* meta = fbcdcExecuteDirectSQL(database->connection,sql); + if (fbcmdErrorCount(meta) > 0) { + FBCErrorMetaData *errorMeta; + char *errorMessage; + unsigned error_type = 0; + + errorMeta = fbcdcErrorMetaData(database->connection, meta); + error_type = fbcemdErrorCodeAtIndex(errorMeta, 0); + errorMessage = fbcemdAllErrorMessages(errorMeta); + if (error_type != 250) { + php_error(E_WARNING, "Error executing SQL-statement (%s)", sql); + } +// free(errorMessage); + fbcemdRelease(errorMeta); + + if (error_type != 250) { + fbcmdRelease(meta); + return NULL; + } + } + if (fbcmdHasMetaDataArray(meta)) { sR = fbcmdMetaDataArrayCount(meta); md = (FBCMetaData*)fbcmdMetaDataAtIndex(meta, cR); |
