diff options
author | drh <drh@noemail.net> | 2014-01-10 20:46:55 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2014-01-10 20:46:55 +0000 |
commit | 75593d96be4062a3fd6cf86135b945e95367b10b (patch) | |
tree | ebf32c3c53072f8fee20f451a1664006a17b43d4 /src/trigger.c | |
parent | c740752470a0557b03299c5fd5036e5e096b78e3 (diff) | |
download | sqlite-75593d96be4062a3fd6cf86135b945e95367b10b.tar.gz sqlite-75593d96be4062a3fd6cf86135b945e95367b10b.zip |
Allow a VALUES clause to be used any place that a SELECT statement can be
used.
FossilOrigin-Name: c9ea7d199f06a7801ab639e7ac98ebeb98706f24
Diffstat (limited to 'src/trigger.c')
-rw-r--r-- | src/trigger.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/src/trigger.c b/src/trigger.c index 1c68a708d..fdc2a0388 100644 --- a/src/trigger.c +++ b/src/trigger.c @@ -397,25 +397,21 @@ TriggerStep *sqlite3TriggerInsertStep( sqlite3 *db, /* The database connection */ Token *pTableName, /* Name of the table into which we insert */ IdList *pColumn, /* List of columns in pTableName to insert into */ - ExprList *pEList, /* The VALUE clause: a list of values to be inserted */ Select *pSelect, /* A SELECT statement that supplies values */ u8 orconf /* The conflict algorithm (OE_Abort, OE_Replace, etc.) */ ){ TriggerStep *pTriggerStep; - assert(pEList == 0 || pSelect == 0); - assert(pEList != 0 || pSelect != 0 || db->mallocFailed); + assert(pSelect != 0 || db->mallocFailed); pTriggerStep = triggerStepAllocate(db, TK_INSERT, pTableName); if( pTriggerStep ){ pTriggerStep->pSelect = sqlite3SelectDup(db, pSelect, EXPRDUP_REDUCE); pTriggerStep->pIdList = pColumn; - pTriggerStep->pExprList = sqlite3ExprListDup(db, pEList, EXPRDUP_REDUCE); pTriggerStep->orconf = orconf; }else{ sqlite3IdListDelete(db, pColumn); } - sqlite3ExprListDelete(db, pEList); sqlite3SelectDelete(db, pSelect); return pTriggerStep; @@ -753,7 +749,6 @@ static int codeTriggerProgram( case TK_INSERT: { sqlite3Insert(pParse, targetSrcList(pParse, pStep), - sqlite3ExprListDup(db, pStep->pExprList, 0), sqlite3SelectDup(db, pStep->pSelect, 0), sqlite3IdListDup(db, pStep->pIdList), pParse->eOrconf |