Lines Matching refs:pParse
20 Parse *pParse, /* The parsing context */
143 static Expr *exprRowColumn(Parse *pParse, int iCol){ in exprRowColumn() argument
144 Expr *pRet = sqlite3PExpr(pParse, TK_ROW, 0, 0); in exprRowColumn()
188 Parse *pParse, /* Parse context */ in updateFromSelect() argument
204 sqlite3 *db = pParse->db; in updateFromSelect()
212 sqlite3ErrorMsg(pParse, "ORDER BY without LIMIT on UPDATE"); in updateFromSelect()
234 Expr *pNew = exprRowColumn(pParse, pPk->aiColumn[i]); in updateFromSelect()
237 pGrp = sqlite3ExprListAppend(pParse, pGrp, sqlite3ExprDup(db, pNew, 0)); in updateFromSelect()
240 pList = sqlite3ExprListAppend(pParse, pList, pNew); in updateFromSelect()
245 pList = sqlite3ExprListAppend(pParse, pList, exprRowColumn(pParse, i)); in updateFromSelect()
250 pList = sqlite3ExprListAppend(pParse, 0, sqlite3PExpr(pParse,TK_ROW,0,0)); in updateFromSelect()
253 pGrp = sqlite3ExprListAppend(pParse, 0, sqlite3PExpr(pParse,TK_ROW,0,0)); in updateFromSelect()
257 assert( pChanges!=0 || pParse->db->mallocFailed ); in updateFromSelect()
260 pList = sqlite3ExprListAppend(pParse, pList, in updateFromSelect()
265 pSelect = sqlite3SelectNew(pParse, pList, in updateFromSelect()
271 sqlite3Select(pParse, pSelect, &dest); in updateFromSelect()
285 Parse *pParse, /* The parser context */ in sqlite3Update() argument
352 db = pParse->db; in sqlite3Update()
353 assert( db->pParse==pParse ); in sqlite3Update()
354 if( pParse->nErr ){ in sqlite3Update()
361 pTab = sqlite3SrcListLookup(pParse, pTabList); in sqlite3Update()
363 iDb = sqlite3SchemaToIndex(pParse->db, pTab->pSchema); in sqlite3Update()
369 pTrigger = sqlite3TriggersExist(pParse, pTab, TK_UPDATE, pChanges, &tmask); in sqlite3Update()
385 sqlite3TreeViewUpdate(pParse->pWith, pTabList, pChanges, pWhere, in sqlite3Update()
400 pParse, pTabList, pWhere, pOrderBy, pLimit, "UPDATE" in sqlite3Update()
407 if( sqlite3ViewGetColumnNames(pParse, pTab) ){ in sqlite3Update()
410 if( sqlite3IsReadOnly(pParse, pTab, tmask) ){ in sqlite3Update()
419 iBaseCur = iDataCur = pParse->nTab++; in sqlite3Update()
425 iDataCur = pParse->nTab; in sqlite3Update()
427 pParse->nTab++; in sqlite3Update()
433 pParse->nTab = iBaseCur; in sqlite3Update()
450 sNC.pParse = pParse; in sqlite3Update()
456 v = sqlite3GetVdbe(pParse); in sqlite3Update()
488 sqlite3ErrorMsg(pParse, in sqlite3Update()
505 sqlite3ErrorMsg(pParse, "no such column: %s", pChanges->a[i].zEName); in sqlite3Update()
506 pParse->checkSchema = 1; in sqlite3Update()
513 rc = sqlite3AuthCheck(pParse, SQLITE_UPDATE, pTab->zName, in sqlite3Update()
565 hasFK = sqlite3FkRequired(pParse, pTab, aXRef, chngKey); in sqlite3Update()
577 reg = ++pParse->nMem; in sqlite3Update()
578 pParse->nMem += pIdx->nColumn; in sqlite3Update()
583 reg = ++pParse->nMem; in sqlite3Update()
584 pParse->nMem += pIdx->nColumn; in sqlite3Update()
595 aRegIdx[nAllIdx] = ++pParse->nMem; /* Register storing the table record */ in sqlite3Update()
602 if( pParse->nested==0 ) sqlite3VdbeCountChanges(v); in sqlite3Update()
603 sqlite3BeginWriteOperation(pParse, pTrigger || hasFK, iDb); in sqlite3Update()
612 assert( aRegIdx[nAllIdx]==pParse->nMem ); in sqlite3Update()
614 regOldRowid = regNewRowid = ++pParse->nMem; in sqlite3Update()
616 regOld = pParse->nMem + 1; in sqlite3Update()
617 pParse->nMem += pTab->nCol; in sqlite3Update()
620 regNewRowid = ++pParse->nMem; in sqlite3Update()
622 regNew = pParse->nMem + 1; in sqlite3Update()
623 pParse->nMem += pTab->nCol; in sqlite3Update()
628 sqlite3AuthContextPush(pParse, &sContext, pTab->zName); in sqlite3Update()
636 sqlite3MaterializeView(pParse, pTab, in sqlite3Update()
654 updateVirtualTable(pParse, pTabList, pTab, pChanges, pRowidExpr, aXRef, in sqlite3Update()
661 labelContinue = labelBreak = sqlite3VdbeMakeLabel(pParse); in sqlite3Update()
666 && !pParse->pTriggerTab in sqlite3Update()
667 && !pParse->nested in sqlite3Update()
668 && !pParse->bReturning in sqlite3Update()
671 regRowCount = ++pParse->nMem; in sqlite3Update()
677 iEph = pParse->nTab++; in sqlite3Update()
682 iPk = pParse->nMem+1; in sqlite3Update()
683 pParse->nMem += nPk; in sqlite3Update()
684 pParse->nMem += nChangeFrom; in sqlite3Update()
685 regKey = ++pParse->nMem; in sqlite3Update()
688 iEph = pParse->nTab++; in sqlite3Update()
692 KeyInfo *pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pPk); in sqlite3Update()
700 pParse, iEph, pPk, pChanges, pTabList, pWhere, pOrderBy, pLimit in sqlite3Update()
710 sqlite3MultiWrite(pParse); in sqlite3Update()
723 sqlite3ExprIfFalse(pParse, pWhere, labelBreak, SQLITE_JUMPIFNULL); in sqlite3Update()
734 if( !pParse->nested && !pTrigger && !hasFK && !chngKey && !bReplace ){ in sqlite3Update()
737 pWInfo = sqlite3WhereBegin(pParse, pTabList, pWhere,0,0,0,flags,iIdxCur); in sqlite3Update()
753 sqlite3MultiWrite(pParse); in sqlite3Update()
770 aRegIdx[nAllIdx] = ++pParse->nMem; in sqlite3Update()
815 sqlite3OpenTableAndIndices(pParse, pTab, OP_OpenWrite, 0, iBaseCur, in sqlite3Update()
835 labelContinue = sqlite3VdbeMakeLabel(pParse); in sqlite3Update()
841 labelContinue = sqlite3VdbeMakeLabel(pParse); in sqlite3Update()
867 labelContinue = sqlite3VdbeMakeLabel(pParse); in sqlite3Update()
883 sqlite3ExprCode(pParse, pRowidExpr, regNewRowid); in sqlite3Update()
893 u32 oldmask = (hasFK ? sqlite3FkOldmask(pParse, pTab) : 0); in sqlite3Update()
894 oldmask |= sqlite3TriggerColmask(pParse, in sqlite3Update()
929 pParse, pTrigger, pChanges, 1, TRIGGER_BEFORE, pTab, onError in sqlite3Update()
944 sqlite3ExprCode(pParse, pChanges->a[j].pExpr, k); in sqlite3Update()
965 sqlite3ComputeGeneratedColumns(pParse, regNew, pTab); in sqlite3Update()
974 sqlite3CodeRowTrigger(pParse, pTrigger, TK_UPDATE, pChanges, in sqlite3Update()
1012 sqlite3ComputeGeneratedColumns(pParse, regNew, pTab); in sqlite3Update()
1021 sqlite3GenerateConstraintChecks(pParse, pTab, aRegIdx, iDataCur, iIdxCur, in sqlite3Update()
1039 sqlite3FkCheck(pParse, pTab, regOldRowid, 0, aXRef, chngKey); in sqlite3Update()
1043 sqlite3GenerateRowIndexDelete(pParse, pTab, iDataCur, iIdxCur, aRegIdx, -1); in sqlite3Update()
1073 if( !pParse->nested ){ in sqlite3Update()
1083 sqlite3FkCheck(pParse, pTab, 0, regNewRowid, aXRef, chngKey); in sqlite3Update()
1088 pParse, pTab, iDataCur, iIdxCur, regNewRowid, aRegIdx, in sqlite3Update()
1097 sqlite3FkActions(pParse, pTab, pChanges, regOldRowid, aXRef, chngKey); in sqlite3Update()
1107 sqlite3CodeRowTrigger(pParse, pTrigger, TK_UPDATE, pChanges, in sqlite3Update()
1128 if( pParse->nested==0 && pParse->pTriggerTab==0 && pUpsert==0 ){ in sqlite3Update()
1129 sqlite3AutoincrementEnd(pParse); in sqlite3Update()
1185 Parse *pParse, /* The parsing context */ in updateVirtualTable() argument
1194 Vdbe *v = pParse->pVdbe; /* Virtual machine under construction */ in updateVirtualTable()
1197 sqlite3 *db = pParse->db; /* Database connection */ in updateVirtualTable()
1213 ephemTab = pParse->nTab++; in updateVirtualTable()
1215 regArg = pParse->nMem + 1; in updateVirtualTable()
1216 pParse->nMem += nArg; in updateVirtualTable()
1225 pRow = sqlite3PExpr(pParse, TK_ROW, 0, 0); in updateVirtualTable()
1236 pRow = exprRowColumn(pParse, iPk); in updateVirtualTable()
1239 pList = sqlite3ExprListAppend(pParse, 0, pRow); in updateVirtualTable()
1243 pList = sqlite3ExprListAppend(pParse, pList, in updateVirtualTable()
1247 pList = sqlite3ExprListAppend(pParse, pList, exprRowColumn(pParse, i)); in updateVirtualTable()
1251 updateFromSelect(pParse, ephemTab, pPk, pList, pSrc, pWhere, 0, 0); in updateVirtualTable()
1255 regRec = ++pParse->nMem; in updateVirtualTable()
1256 regRowid = ++pParse->nMem; in updateVirtualTable()
1260 pParse, pSrc, pWhere, 0, 0, 0, WHERE_ONEPASS_DESIRED, 0 in updateVirtualTable()
1268 sqlite3ExprCode(pParse, pChanges->a[aXRef[i]].pExpr, regArg+2+i); in updateVirtualTable()
1277 sqlite3ExprCode(pParse, pRowid, regArg+1); in updateVirtualTable()
1305 sqlite3MultiWrite(pParse); in updateVirtualTable()
1333 sqlite3VtabMakeWritable(pParse, pTab); in updateVirtualTable()
1336 sqlite3MayAbort(pParse); in updateVirtualTable()