Lines Matching defs:pTrigger

10199   Trigger *pTrigger;   /* List of triggers stored in pSchema */
11040 ** TriggerPrg.pTrigger, assuming a default ON CONFLICT clause of
11043 ** values for both pTrigger and orconf.
11051 Trigger *pTrigger; /* Trigger this program was coded from */
11053 SubProgram *pProgram; /* Program implementing pTrigger/orconf */
11209 * linked list is stored as the "pTrigger" member of the associated
83208 Trigger *pTrigger;
83225 pTrigger = sqlite3TriggerList(pParse, pTab);
83226 while( pTrigger ){
83227 assert( pTrigger->pSchema==pTab->pSchema ||
83228 pTrigger->pSchema==db->aDb[1].pSchema );
83229 sqlite3DropTriggerPtr(pParse, pTrigger);
83230 pTrigger = pTrigger->pNext;
85715 Trigger *pTrigger; /* List of table triggers, if required */
85737 pTrigger = sqlite3TriggersExist(pParse, pTab, TK_DELETE, 0, 0);
85740 # define pTrigger 0
85754 if( sqlite3IsReadOnly(pParse, pTab, (pTrigger?1:0)) ){
85765 assert(!isView || pTrigger);
85821 if( rcauth==SQLITE_OK && pWhere==0 && !pTrigger && !IsVirtual(pTab)
85882 sqlite3GenerateRowDelete(pParse, pTab, iCur, iRowid, count, pTrigger, OE_Default);
85928 #ifdef pTrigger
85929 #undef pTrigger
85957 Trigger *pTrigger, /* List of triggers to (potentially) fire */
85975 if( sqlite3FkRequired(pParse, pTab, 0, 0) || pTrigger ){
85982 pParse, pTrigger, 0, 0, TRIGGER_BEFORE|TRIGGER_AFTER, pTab, onconf
85998 sqlite3CodeRowTrigger(pParse, pTrigger,
86031 sqlite3CodeRowTrigger(pParse, pTrigger,
88718 Trigger *pTrigger; /* Trigger definition to return */
88722 pTrigger = pFKey->apTrigger[iAction];
88724 if( action!=OE_None && !pTrigger ){
88837 pTrigger = (Trigger *)sqlite3DbMallocZero(db,
88842 if( pTrigger ){
88843 pStep = pTrigger->step_list = (TriggerStep *)&pTrigger[1];
88853 pTrigger->pWhen = sqlite3ExprDup(db, pWhen, EXPRDUP_REDUCE);
88865 fkTriggerDelete(db, pTrigger);
88882 pStep->pTrig = pTrigger;
88883 pTrigger->pSchema = pTab->pSchema;
88884 pTrigger->pTabSchema = pTab->pSchema;
88885 pFKey->apTrigger[iAction] = pTrigger;
88886 pTrigger->op = (pChanges ? TK_UPDATE : TK_DELETE);
88889 return pTrigger;
89438 Trigger *pTrigger; /* List of triggers on pTab, if required */
89469 pTrigger = sqlite3TriggersExist(pParse, pTab, TK_INSERT, 0, &tmask);
89472 # define pTrigger 0
89480 assert( (pTrigger && tmask) || (pTrigger==0 && tmask==0) );
89503 sqlite3BeginWriteOperation(pParse, pSelect || pTrigger, iDb);
89516 assert( !pTrigger );
89592 if( pTrigger || readsTable(pParse, addrSelect, iDb, pTab) ){
89833 sqlite3CodeRowTrigger(pParse, pTrigger, TK_INSERT, 0, TRIGGER_BEFORE,
89957 if( pTrigger ){
89959 sqlite3CodeRowTrigger(pParse, pTrigger, TK_INSERT, 0, TRIGGER_AFTER,
90018 #ifdef pTrigger
90019 #undef pTrigger
90245 Trigger *pTrigger = 0;
90247 pTrigger = sqlite3TriggersExist(pParse, pTab, TK_DELETE, 0, 0);
90249 if( pTrigger || sqlite3FkRequired(pParse, pTab, 0, 0) ){
90252 pParse, pTab, baseCur, regRowid, 0, pTrigger, OE_Replace
90356 Trigger *pTrigger = 0;
90360 pTrigger = sqlite3TriggersExist(pParse, pTab, TK_DELETE, 0, 0);
90363 pParse, pTab, baseCur, regR, 0, pTrigger, OE_Replace
99352 ** are already attached to pTab->pTrigger. But there might be additional
99354 ** TEMP triggers on pTab to the beginning of the pTab->pTrigger list
99359 ** pTab as well as the triggers lised in pTab->pTrigger.
99377 pTrig->pNext = (pList ? pList : pTab->pTrigger);
99383 return (pList ? pList : pTab->pTrigger);
99406 Trigger *pTrigger = 0; /* The new trigger */
99555 pTrigger = (Trigger*)sqlite3DbMallocZero(db, sizeof(Trigger));
99556 if( pTrigger==0 ) goto trigger_cleanup;
99557 pTrigger->zName = zName;
99559 pTrigger->table = sqlite3DbStrDup(db, pTableName->a[0].zName);
99560 pTrigger->pSchema = db->aDb[iDb].pSchema;
99561 pTrigger->pTabSchema = pTab->pSchema;
99562 pTrigger->op = (u8)op;
99563 pTrigger->tr_tm = tr_tm==TK_BEFORE ? TRIGGER_BEFORE : TRIGGER_AFTER;
99564 pTrigger->pWhen = sqlite3ExprDup(db, pWhen, EXPRDUP_REDUCE);
99565 pTrigger->pColumns = sqlite3IdListDup(db, pColumns);
99567 pParse->pNewTrigger = pTrigger;
99575 sqlite3DeleteTrigger(db, pTrigger);
99577 assert( pParse->pNewTrigger==pTrigger );
99647 pLink->pNext = pTab->pTrigger;
99648 pTab->pTrigger = pLink;
99785 SQLITE_PRIVATE void sqlite3DeleteTrigger(sqlite3 *db, Trigger *pTrigger){
99786 if( pTrigger==0 ) return;
99787 sqlite3DeleteTriggerStep(db, pTrigger->step_list);
99788 sqlite3DbFree(db, pTrigger->zName);
99789 sqlite3DbFree(db, pTrigger->table);
99790 sqlite3ExprDelete(db, pTrigger->pWhen);
99791 sqlite3IdListDelete(db, pTrigger->pColumns);
99792 sqlite3DbFree(db, pTrigger);
99804 Trigger *pTrigger = 0;
99825 pTrigger = sqlite3HashFind(&(db->aDb[j].pSchema->trigHash), zName, nName);
99826 if( pTrigger ) break;
99828 if( !pTrigger ){
99837 sqlite3DropTriggerPtr(pParse, pTrigger);
99847 static Table *tableOfTrigger(Trigger *pTrigger){
99848 int n = sqlite3Strlen30(pTrigger->table);
99849 return sqlite3HashFind(&pTrigger->pTabSchema->tblHash, pTrigger->table, n);
99856 SQLITE_PRIVATE void sqlite3DropTriggerPtr(Parse *pParse, Trigger *pTrigger){
99862 iDb = sqlite3SchemaToIndex(pParse->db, pTrigger->pSchema);
99864 pTable = tableOfTrigger(pTrigger);
99866 assert( pTable->pSchema==pTrigger->pSchema || iDb==1 );
99873 if( sqlite3AuthCheck(pParse, code, pTrigger->zName, pTable->zName, zDb) ||
99900 sqlite3VdbeChangeP4(v, base+1, pTrigger->zName, P4_TRANSIENT);
99904 sqlite3VdbeAddOp4(v, OP_DropTrigger, iDb, 0, 0, pTrigger->zName, 0);
99915 Trigger *pTrigger;
99920 pTrigger = sqlite3HashInsert(pHash, zName, sqlite3Strlen30(zName), 0);
99921 if( ALWAYS(pTrigger) ){
99922 if( pTrigger->pSchema==pTrigger->pTabSchema ){
99923 Table *pTab = tableOfTrigger(pTrigger);
99925 for(pp=&pTab->pTrigger; *pp!=pTrigger; pp=&((*pp)->pNext));
99928 sqlite3DeleteTrigger(db, pTrigger);
100126 ** implementing trigger pTrigger with ON CONFLICT policy orconf.
100130 Trigger *pTrigger, /* Trigger to code */
100131 Table *pTab, /* The table pTrigger is attached to */
100144 assert( pTrigger->zName==0 || pTab==tableOfTrigger(pTrigger) );
100157 pPrg->pTrigger = pTrigger;
100171 pSubParse->zAuthContext = pTrigger->zName;
100172 pSubParse->eTriggerOp = pTrigger->op;
100178 pTrigger->zName, onErrorText(orconf),
100179 (pTrigger->tr_tm==TRIGGER_BEFORE ? "BEFORE" : "AFTER"),
100180 (pTrigger->op==TK_UPDATE ? "UPDATE" : ""),
100181 (pTrigger->op==TK_INSERT ? "INSERT" : ""),
100182 (pTrigger->op==TK_DELETE ? "DELETE" : ""),
100187 sqlite3MPrintf(db, "-- TRIGGER %s", pTrigger->zName), P4_DYNAMIC
100194 if( pTrigger->pWhen ){
100195 pWhen = sqlite3ExprDup(db, pTrigger->pWhen, 0);
100206 codeTriggerProgram(pSubParse, pTrigger->step_list, orconf);
100213 VdbeComment((v, "End: %s.%s", pTrigger->zName, onErrorText(orconf)));
100222 pProgram->token = (void *)pTrigger;
100237 ** trigger pTrigger with default ON CONFLICT algorithm orconf. If no such
100243 Trigger *pTrigger, /* Trigger to code */
100244 Table *pTab, /* The table trigger pTrigger is attached to */
100250 assert( pTrigger->zName==0 || pTab==tableOfTrigger(pTrigger) );
100254 ** a matching TriggerPrg.pTrigger field will be present somewhere
100257 pPrg && (pPrg->pTrigger!=pTrigger || pPrg->orconf!=orconf);
100263 pPrg = codeRowTrigger(pParse, pTrigger, pTab, orconf);
100349 Trigger *pTrigger, /* List of triggers on table pTab */
100358 Trigger *p; /* Used to iterate through pTrigger list */
100364 for(p=pTrigger; p; p=p->pNext){
100411 Trigger *pTrigger, /* List of triggers on table pTab */
100423 for(p=pTrigger; p; p=p->pNext){
100560 Trigger *pTrigger; /* List of triggers on pTab, if required */
100590 pTrigger = sqlite3TriggersExist(pParse, pTab, TK_UPDATE, pChanges, &tmask);
100592 assert( pTrigger || tmask==0 );
100594 # define pTrigger 0
100721 if( pTrigger || hasFK ){
100725 if( chngRowid || pTrigger || hasFK ){
100827 assert( chngRowid || pTrigger || hasFK || regOldRowid==regNewRowid );
100835 if( hasFK || pTrigger ){
100838 pTrigger, pChanges, 0, TRIGGER_BEFORE|TRIGGER_AFTER, pTab, onError
100866 pParse, pTrigger, pChanges, 1, TRIGGER_BEFORE, pTab, onError
100896 sqlite3CodeRowTrigger(pParse, pTrigger, TK_UPDATE, pChanges,
100963 sqlite3CodeRowTrigger(pParse, pTrigger, TK_UPDATE, pChanges,
101015 #ifdef pTrigger
101016 #undef pTrigger