aboutsummaryrefslogtreecommitdiff
path: root/src/insert.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2003-03-31 02:12:46 +0000
committerdrh <drh@noemail.net>2003-03-31 02:12:46 +0000
commitda93d238c2067a1951b8043c3c30355947fd6da9 (patch)
tree29057f4a84763deb95565d3e8bd2622614c85c15 /src/insert.c
parent1c2d84148a6bb2f8d231debd65bc09e948abf029 (diff)
downloadsqlite-da93d238c2067a1951b8043c3c30355947fd6da9.tar.gz
sqlite-da93d238c2067a1951b8043c3c30355947fd6da9.zip
Add the sqliteErrorMsg() function and use it to generate error message
text during parsing and code generation. This simplifies the code somewhat and makes it easier to handle names with a database prefix. (CVS 891) FossilOrigin-Name: 1d3fc977211abdc7ba3fd51d661863e8ce5aef69
Diffstat (limited to 'src/insert.c')
-rw-r--r--src/insert.c33
1 files changed, 10 insertions, 23 deletions
diff --git a/src/insert.c b/src/insert.c
index f9f72f8c4..705bd8e9d 100644
--- a/src/insert.c
+++ b/src/insert.c
@@ -12,7 +12,7 @@
** This file contains C code routines that are called by the parser
** to handle INSERT statements in SQLite.
**
-** $Id: insert.c,v 1.76 2003/03/27 13:50:00 drh Exp $
+** $Id: insert.c,v 1.77 2003/03/31 02:12:47 drh Exp $
*/
#include "sqliteInt.h"
@@ -137,11 +137,9 @@ void sqliteInsert(
TK_BEFORE, TK_ROW, 0) ||
sqliteTriggersExist(pParse, pTab->pTrigger, TK_INSERT, TK_AFTER, TK_ROW, 0);
if( pTab->readOnly || (pTab->pSelect && !row_triggers_exist) ){
- sqliteSetString(&pParse->zErrMsg,
- pTab->pSelect ? "view " : "table ",
- zTab,
- " may not be modified", 0);
- pParse->nErr++;
+ sqliteErrorMsg(pParse, "%s %s may not be modified",
+ pTab->pSelect ? "view" : "table",
+ zTab);
goto insert_cleanup;
}
@@ -245,24 +243,13 @@ void sqliteInsert(
** of columns to be inserted into the table.
*/
if( pColumn==0 && nColumn!=pTab->nCol ){
- char zNum1[30];
- char zNum2[30];
- sprintf(zNum1,"%d", nColumn);
- sprintf(zNum2,"%d", pTab->nCol);
- sqliteSetString(&pParse->zErrMsg, "table ", pTab->zName,
- " has ", zNum2, " columns but ",
- zNum1, " values were supplied", 0);
- pParse->nErr++;
+ sqliteErrorMsg(pParse,
+ "table %S has %d columns but %d values were supplied",
+ pTabList, 0, pTab->nCol, nColumn);
goto insert_cleanup;
}
if( pColumn!=0 && nColumn!=pColumn->nId ){
- char zNum1[30];
- char zNum2[30];
- sprintf(zNum1,"%d", nColumn);
- sprintf(zNum2,"%d", pColumn->nId);
- sqliteSetString(&pParse->zErrMsg, zNum1, " values for ",
- zNum2, " columns", 0);
- pParse->nErr++;
+ sqliteErrorMsg(pParse, "%d values for %d columns", nColumn, pColumn->nId);
goto insert_cleanup;
}
@@ -292,8 +279,8 @@ void sqliteInsert(
}
}
if( j>=pTab->nCol ){
- sqliteSetString(&pParse->zErrMsg, "table ", pTab->zName,
- " has no column named ", pColumn->a[i].zName, 0);
+ sqliteErrorMsg(pParse, "table %S has no column named %s",
+ pTabList, 0, pColumn->a[i].zName);
pParse->nErr++;
goto insert_cleanup;
}