diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/fkey.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/fkey.c b/src/fkey.c index b1dc1b71d..ddee8f4bb 100644 --- a/src/fkey.c +++ b/src/fkey.c @@ -1269,7 +1269,15 @@ static Trigger *fkActionTrigger( sqlite3ExprAlloc(db, TK_ID, &tNew, 0), sqlite3ExprAlloc(db, TK_ID, &tToCol, 0)); }else if( action==OE_SetDflt ){ - Expr *pDflt = pFKey->pFrom->aCol[iFromCol].pDflt; + Column *pCol = pFKey->pFrom->aCol + iFromCol; + Expr *pDflt; + if( pCol->colFlags & COLFLAG_GENERATED ){ + testcase( pCol->colFlags & COLFLAG_VIRTUAL ); + testcase( pCol->colFlags & COLFLAG_STORED ); + pDflt = 0; + }else{ + pDflt = pCol->pDflt; + } if( pDflt ){ pNew = sqlite3ExprDup(db, pDflt, 0); }else{ |