diff options
author | drh <drh@noemail.net> | 2005-11-03 02:03:13 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2005-11-03 02:03:13 +0000 |
commit | 06f6541e2f53f07827dd68f688500e2ccdb45add (patch) | |
tree | 4d015e0c2234eaace11f10f2ca3ca9b9b835a1a7 /src/expr.c | |
parent | 6275b88b9ef82432c725c8c6a8d65ba416cb46c5 (diff) | |
download | sqlite-06f6541e2f53f07827dd68f688500e2ccdb45add.tar.gz sqlite-06f6541e2f53f07827dd68f688500e2ccdb45add.zip |
Disallow subqueries in CHECK constraints. (CVS 2756)
FossilOrigin-Name: db27afc4cdc5b51c1fa0e83dbd6d4a4a69c5b642
Diffstat (limited to 'src/expr.c')
-rw-r--r-- | src/expr.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/expr.c b/src/expr.c index 88c48cfba..7ac839349 100644 --- a/src/expr.c +++ b/src/expr.c @@ -12,7 +12,7 @@ ** This file contains routines used for analyzing expressions and ** for generating VDBE code that evaluates expressions in SQLite. ** -** $Id: expr.c,v 1.233 2005/11/03 00:41:17 drh Exp $ +** $Id: expr.c,v 1.234 2005/11/03 02:03:13 drh Exp $ */ #include "sqliteInt.h" #include <ctype.h> @@ -1188,6 +1188,11 @@ static int nameResolverStep(void *pArg, Expr *pExpr){ #endif case TK_IN: { if( pExpr->pSelect ){ +#ifndef SQLITE_OMIT_CHECK + if( pNC->isCheck ){ + sqlite3ErrorMsg(pParse,"subqueries prohibited in CHECK constraints"); + } +#endif int nRef = pNC->nRef; sqlite3SelectResolve(pParse, pExpr->pSelect, pNC); assert( pNC->nRef>=nRef ); |