diff options
Diffstat (limited to 'src/resolve.c')
-rw-r--r-- | src/resolve.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/resolve.c b/src/resolve.c index 3ac6f5305..a754ae846 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -349,9 +349,15 @@ static int lookupName( #ifndef SQLITE_OMIT_UPSERT if( pExpr->iTable==2 ){ testcase( iCol==(-1) ); - pExpr->iTable = pNC->uNC.pUpsert->regData + iCol; - eNewExprOp = TK_REGISTER; - ExprSetProperty(pExpr, EP_Alias); + if( IN_RENAME_COLUMN ){ + pExpr->iColumn = iCol; + pExpr->pTab = pTab; + eNewExprOp = TK_COLUMN; + }else{ + pExpr->iTable = pNC->uNC.pUpsert->regData + iCol; + eNewExprOp = TK_REGISTER; + ExprSetProperty(pExpr, EP_Alias); + } }else #endif /* SQLITE_OMIT_UPSERT */ { |