Lines Matching refs:pTab

31 static int isAlterableTable(Parse *pParse, Table *pTab){  in isAlterableTable()  argument
32 if( 0==sqlite3StrNICmp(pTab->zName, "sqlite_", 7) in isAlterableTable()
34 || (pTab->tabFlags & TF_Eponymous)!=0 in isAlterableTable()
35 || ( (pTab->tabFlags & TF_Shadow)!=0 in isAlterableTable()
40 sqlite3ErrorMsg(pParse, "table %s may not be altered", pTab->zName); in isAlterableTable()
131 Table *pTab; /* Table being renamed */ in sqlite3AlterRenameTable() local
143 pTab = sqlite3LocateTableItem(pParse, 0, &pSrc->a[0]); in sqlite3AlterRenameTable()
144 if( !pTab ) goto exit_rename_table; in sqlite3AlterRenameTable()
145 iDb = sqlite3SchemaToIndex(pParse->db, pTab->pSchema); in sqlite3AlterRenameTable()
157 || sqlite3IsShadowTableOf(db, pTab, zName) in sqlite3AlterRenameTable()
167 if( SQLITE_OK!=isAlterableTable(pParse, pTab) ){ in sqlite3AlterRenameTable()
175 if( IsView(pTab) ){ in sqlite3AlterRenameTable()
176 sqlite3ErrorMsg(pParse, "view %s may not be altered", pTab->zName); in sqlite3AlterRenameTable()
183 if( sqlite3AuthCheck(pParse, SQLITE_ALTER_TABLE, zDb, pTab->zName, 0) ){ in sqlite3AlterRenameTable()
189 if( sqlite3ViewGetColumnNames(pParse, pTab) ){ in sqlite3AlterRenameTable()
192 if( IsVirtual(pTab) ){ in sqlite3AlterRenameTable()
193 pVTab = sqlite3GetVTable(db, pTab); in sqlite3AlterRenameTable()
211 zTabName = pTab->zName; in sqlite3AlterRenameTable()
249 zDb, zName, pTab->zName); in sqlite3AlterRenameTable()
315 Table *pTab; /* Table being altered */ in sqlite3AlterFinishAddColumn() local
339 pTab = sqlite3FindTable(db, zTab, zDb); in sqlite3AlterFinishAddColumn()
340 assert( pTab ); in sqlite3AlterFinishAddColumn()
344 if( sqlite3AuthCheck(pParse, SQLITE_ALTER_TABLE, zDb, pTab->zName, 0) ){ in sqlite3AlterFinishAddColumn()
415 assert( IsOrdinaryTable(pTab) ); in sqlite3AlterFinishAddColumn()
480 Table *pTab; in sqlite3AlterBeginAddColumn() local
490 pTab = sqlite3LocateTableItem(pParse, 0, &pSrc->a[0]); in sqlite3AlterBeginAddColumn()
491 if( !pTab ) goto exit_begin_add_column; in sqlite3AlterBeginAddColumn()
494 if( IsVirtual(pTab) ){ in sqlite3AlterBeginAddColumn()
501 if( IsView(pTab) ){ in sqlite3AlterBeginAddColumn()
505 if( SQLITE_OK!=isAlterableTable(pParse, pTab) ){ in sqlite3AlterBeginAddColumn()
510 assert( IsOrdinaryTable(pTab) ); in sqlite3AlterBeginAddColumn()
511 assert( pTab->u.tab.addColOffset>0 ); in sqlite3AlterBeginAddColumn()
512 iDb = sqlite3SchemaToIndex(db, pTab->pSchema); in sqlite3AlterBeginAddColumn()
525 pNew->nCol = pTab->nCol; in sqlite3AlterBeginAddColumn()
530 pNew->zName = sqlite3MPrintf(db, "sqlite_altertab_%s", pTab->zName); in sqlite3AlterBeginAddColumn()
535 memcpy(pNew->aCol, pTab->aCol, sizeof(Column)*pNew->nCol); in sqlite3AlterBeginAddColumn()
542 pNew->u.tab.pDfltList = sqlite3ExprListDup(db, pTab->u.tab.pDfltList, 0); in sqlite3AlterBeginAddColumn()
544 pNew->u.tab.addColOffset = pTab->u.tab.addColOffset; in sqlite3AlterBeginAddColumn()
561 static int isRealTable(Parse *pParse, Table *pTab, int bDrop){ in isRealTable() argument
564 if( IsView(pTab) ){ in isRealTable()
569 if( IsVirtual(pTab) ){ in isRealTable()
576 zType, pTab->zName in isRealTable()
598 Table *pTab; /* Table being updated */ in sqlite3AlterRenameColumn() local
607 pTab = sqlite3LocateTableItem(pParse, 0, &pSrc->a[0]); in sqlite3AlterRenameColumn()
608 if( !pTab ) goto exit_rename_column; in sqlite3AlterRenameColumn()
611 if( SQLITE_OK!=isAlterableTable(pParse, pTab) ) goto exit_rename_column; in sqlite3AlterRenameColumn()
612 if( SQLITE_OK!=isRealTable(pParse, pTab, 0) ) goto exit_rename_column; in sqlite3AlterRenameColumn()
615 iSchema = sqlite3SchemaToIndex(db, pTab->pSchema); in sqlite3AlterRenameColumn()
621 if( sqlite3AuthCheck(pParse, SQLITE_ALTER_TABLE, zDb, pTab->zName, 0) ){ in sqlite3AlterRenameColumn()
630 for(iCol=0; iCol<pTab->nCol; iCol++){ in sqlite3AlterRenameColumn()
631 if( 0==sqlite3StrICmp(pTab->aCol[iCol].zCnName, zOld) ) break; in sqlite3AlterRenameColumn()
633 if( iCol==pTab->nCol ){ in sqlite3AlterRenameColumn()
657 zDb, pTab->zName, iCol, zNew, bQuote, iSchema==1, in sqlite3AlterRenameColumn()
658 pTab->zName in sqlite3AlterRenameColumn()
665 zDb, pTab->zName, iCol, zNew, bQuote in sqlite3AlterRenameColumn()
711 Table *pTab; /* Table being ALTERed */ member
813 sqlite3RenameTokenRemap(pParse, 0, (const void*)&pExpr->y.pTab); in renameUnmapExprCb()
1012 && pWalker->pParse->pTriggerTab==p->pTab in renameColumnExprCb()
1018 && p->pTab==pExpr->y.pTab in renameColumnExprCb()
1481 Table *pTab; in renameColumnFunc() local
1492 pTab = sqlite3FindTable(db, zTable, zDb); in renameColumnFunc()
1493 if( pTab==0 || iCol>=pTab->nCol ){ in renameColumnFunc()
1497 zOld = pTab->aCol[iCol].zCnName; in renameColumnFunc()
1499 sCtx.iCol = ((iCol==pTab->iPKey) ? -1 : iCol); in renameColumnFunc()
1513 sCtx.pTab = pTab; in renameColumnFunc()
1530 sCtx.pTab = sParse.pNewTable; in renameColumnFunc()
1582 if( pTarget==pTab ){ in renameColumnFunc()
1595 if( sParse.pTriggerTab==pTab ){ in renameColumnFunc()
1632 && p->pTab==pExpr->y.pTab in renameTableExprCb()
1634 renameTokenFind(pWalker->pParse, p, (void*)&pExpr->y.pTab); in renameTableExprCb()
1657 if( pItem->pTab==p->pTab ){ in renameTableSelectCb()
1714 sCtx.pTab = sqlite3FindTable(db, zOld, zDb); in renameTableFunc()
1726 Table *pTab = sParse.pNewTable; in renameTableFunc() local
1728 if( IsView(pTab) ){ in renameTableFunc()
1730 Select *pSelect = pTab->u.view.pSelect; in renameTableFunc()
1737 sqlite3SelectPrep(&sParse, pTab->u.view.pSelect, &sNC); in renameTableFunc()
1741 sqlite3WalkSelect(&sWalker, pTab->u.view.pSelect); in renameTableFunc()
1748 && !IsVirtual(pTab) in renameTableFunc()
1751 assert( IsOrdinaryTable(pTab) ); in renameTableFunc()
1752 for(pFKey=pTab->u.tab.pFKey; pFKey; pFKey=pFKey->pNextFrom){ in renameTableFunc()
1763 if( sqlite3_stricmp(zOld, pTab->zName)==0 ){ in renameTableFunc()
1764 sCtx.pTab = pTab; in renameTableFunc()
1766 sqlite3WalkExprList(&sWalker, pTab->pCheck); in renameTableFunc()
1768 renameTokenFind(&sParse, &sCtx, pTab->zName); in renameTableFunc()
1785 && sCtx.pTab->pSchema==pTrigger->pTabSchema in renameTableFunc()
2073 Table *pTab; in dropColumnFunc() local
2085 pTab = sParse.pNewTable; in dropColumnFunc()
2086 if( pTab==0 || pTab->nCol==1 || iCol>=pTab->nCol ){ in dropColumnFunc()
2092 pCol = renameTokenFind(&sParse, 0, (void*)pTab->aCol[iCol].zCnName); in dropColumnFunc()
2093 if( iCol<pTab->nCol-1 ){ in dropColumnFunc()
2095 pEnd = renameTokenFind(&sParse, 0, (void*)pTab->aCol[iCol+1].zCnName); in dropColumnFunc()
2098 assert( IsOrdinaryTable(pTab) ); in dropColumnFunc()
2099 zEnd = (const char*)&zSql[pTab->u.tab.addColOffset]; in dropColumnFunc()
2127 Table *pTab; /* Table to modify */ in sqlite3AlterDropColumn() local
2137 pTab = sqlite3LocateTableItem(pParse, 0, &pSrc->a[0]); in sqlite3AlterDropColumn()
2138 if( !pTab ) goto exit_drop_column; in sqlite3AlterDropColumn()
2142 if( SQLITE_OK!=isAlterableTable(pParse, pTab) ) goto exit_drop_column; in sqlite3AlterDropColumn()
2143 if( SQLITE_OK!=isRealTable(pParse, pTab, 1) ) goto exit_drop_column; in sqlite3AlterDropColumn()
2151 iCol = sqlite3ColumnIndex(pTab, zCol); in sqlite3AlterDropColumn()
2159 if( pTab->aCol[iCol].colFlags & (COLFLAG_PRIMKEY|COLFLAG_UNIQUE) ){ in sqlite3AlterDropColumn()
2161 (pTab->aCol[iCol].colFlags&COLFLAG_PRIMKEY) ? "PRIMARY KEY" : "UNIQUE", in sqlite3AlterDropColumn()
2168 if( pTab->nCol<=1 ){ in sqlite3AlterDropColumn()
2174 iDb = sqlite3SchemaToIndex(db, pTab->pSchema); in sqlite3AlterDropColumn()
2179 if( sqlite3AuthCheck(pParse, SQLITE_ALTER_TABLE, zDb, pTab->zName, zCol) ){ in sqlite3AlterDropColumn()
2189 , zDb, iDb, iCol, pTab->zName in sqlite3AlterDropColumn()
2197 if( pParse->nErr==0 && (pTab->aCol[iCol].colFlags & COLFLAG_VIRTUAL)==0 ){ in sqlite3AlterDropColumn()
2207 sqlite3OpenTable(pParse, iCur, iDb, pTab, OP_OpenWrite); in sqlite3AlterDropColumn()
2210 if( HasRowid(pTab) ){ in sqlite3AlterDropColumn()
2212 pParse->nMem += pTab->nCol; in sqlite3AlterDropColumn()
2214 pPk = sqlite3PrimaryKeyIndex(pTab); in sqlite3AlterDropColumn()
2222 for(i=0; i<pTab->nCol; i++){ in sqlite3AlterDropColumn()
2223 if( i!=iCol && (pTab->aCol[i].colFlags & COLFLAG_VIRTUAL)==0 ){ in sqlite3AlterDropColumn()
2233 if( i==pTab->iPKey ){ in sqlite3AlterDropColumn()
2236 sqlite3ExprCodeGetColumnOfTable(v, pTab, iCur, i, regOut); in sqlite3AlterDropColumn()