Lines Matching refs:pTrigger
223 nt->pNext = pTab->pTrigger; in sqliteFinishTrigger()
224 pTab->pTrigger = nt; in sqliteFinishTrigger()
367 void sqliteDeleteTrigger(Trigger *pTrigger){ in sqliteDeleteTrigger() argument
368 if( pTrigger==0 ) return; in sqliteDeleteTrigger()
369 sqliteDeleteTriggerStep(pTrigger->step_list); in sqliteDeleteTrigger()
370 sqliteFree(pTrigger->name); in sqliteDeleteTrigger()
371 sqliteFree(pTrigger->table); in sqliteDeleteTrigger()
372 sqliteExprDelete(pTrigger->pWhen); in sqliteDeleteTrigger()
373 sqliteIdListDelete(pTrigger->pColumns); in sqliteDeleteTrigger()
374 if( pTrigger->nameToken.dyn ) sqliteFree((char*)pTrigger->nameToken.z); in sqliteDeleteTrigger()
375 sqliteFree(pTrigger); in sqliteDeleteTrigger()
392 Trigger *pTrigger; in sqliteDropTrigger() local
407 pTrigger = sqliteHashFind(&(db->aDb[j].trigHash), zName, nName+1); in sqliteDropTrigger()
408 if( pTrigger ) break; in sqliteDropTrigger()
410 if( !pTrigger ){ in sqliteDropTrigger()
414 sqliteDropTriggerPtr(pParse, pTrigger, 0); in sqliteDropTrigger()
425 void sqliteDropTriggerPtr(Parse *pParse, Trigger *pTrigger, int nested){ in sqliteDropTriggerPtr() argument
430 assert( pTrigger->iDb<db->nDb ); in sqliteDropTriggerPtr()
431 if( pTrigger->iDb>=2 ){ in sqliteDropTriggerPtr()
433 "auxiliary database %s", db->aDb[pTrigger->iDb].zName); in sqliteDropTriggerPtr()
436 pTable = sqliteFindTable(db, pTrigger->table,db->aDb[pTrigger->iTabDb].zName); in sqliteDropTriggerPtr()
438 assert( pTable->iDb==pTrigger->iDb || pTrigger->iDb==1 ); in sqliteDropTriggerPtr()
442 const char *zDb = db->aDb[pTrigger->iDb].zName; in sqliteDropTriggerPtr()
443 const char *zTab = SCHEMA_TABLE(pTrigger->iDb); in sqliteDropTriggerPtr()
444 if( pTrigger->iDb ) code = SQLITE_DROP_TEMP_TRIGGER; in sqliteDropTriggerPtr()
445 if( sqliteAuthCheck(pParse, code, pTrigger->name, pTable->zName, zDb) || in sqliteDropTriggerPtr()
469 sqliteOpenMasterTable(v, pTrigger->iDb); in sqliteDropTriggerPtr()
471 sqliteVdbeChangeP3(v, base+1, pTrigger->name, 0); in sqliteDropTriggerPtr()
472 if( pTrigger->iDb==0 ){ in sqliteDropTriggerPtr()
483 const char *zName = pTrigger->name; in sqliteDropTriggerPtr()
485 if( pTable->pTrigger == pTrigger ){ in sqliteDropTriggerPtr()
486 pTable->pTrigger = pTrigger->pNext; in sqliteDropTriggerPtr()
488 Trigger *cc = pTable->pTrigger; in sqliteDropTriggerPtr()
490 if( cc->pNext == pTrigger ){ in sqliteDropTriggerPtr()
498 sqliteHashInsert(&(db->aDb[pTrigger->iDb].trigHash), zName, nName+1, 0); in sqliteDropTriggerPtr()
499 sqliteDeleteTrigger(pTrigger); in sqliteDropTriggerPtr()
538 Trigger *pTrigger, /* A list of triggers associated with a table */ in sqliteTriggersExist() argument
550 pTriggerCursor = pTrigger; in sqliteTriggersExist()
558 while( ss && ss->pTrigger != pTrigger ){ in sqliteTriggersExist()
693 Trigger * pTrigger; in sqliteCodeRowTrigger() local
701 pTrigger = pTab->pTrigger; in sqliteCodeRowTrigger()
702 while( pTrigger ){ in sqliteCodeRowTrigger()
706 if( pTrigger->op == op && pTrigger->tr_tm == tr_tm && in sqliteCodeRowTrigger()
707 pTrigger->foreach == TK_ROW ){ in sqliteCodeRowTrigger()
711 if( pTriggerStack->pTrigger == pTrigger ){ in sqliteCodeRowTrigger()
716 if( op == TK_UPDATE && pTrigger->pColumns && in sqliteCodeRowTrigger()
717 !checkColumnOverLap(pTrigger->pColumns, pChanges) ){ in sqliteCodeRowTrigger()
731 pTriggerStack->pTrigger = pTrigger; in sqliteCodeRowTrigger()
738 sqliteAuthContextPush(pParse, &sContext, pTrigger->name); in sqliteCodeRowTrigger()
742 whenExpr = sqliteExprDup(pTrigger->pWhen); in sqliteCodeRowTrigger()
753 codeTriggerProgram(pParse, pTrigger->step_list, orconf); in sqliteCodeRowTrigger()
763 pTrigger = pTrigger->pNext; in sqliteCodeRowTrigger()