Lines Matching refs:pTab

140 static int columnIndex(Table *pTab, const char *zCol){
142 for(i=0; i<pTab->nCol; i++){
143 if( sqliteStrICmp(pTab->aCol[i].zName, zCol)==0 ) return i;
218 if( pTerm->pTab==0 || pOther->pTab==0 ) continue;
224 Table *pTab;
230 pTab = pTerm->pTab;
231 for(j=0; j<pTab->nCol; j++){
232 if( columnIndex(pOther->pTab, pTab->aCol[j].zName)>=0 ){
233 addWhereTerm(pTab->aCol[j].zName, pTab, pOther->pTab, &p->pWhere);
272 if( columnIndex(pTerm->pTab, pList->a[j].zName)<0 ||
273 columnIndex(pOther->pTab, pList->a[j].zName)<0 ){
278 addWhereTerm(pList->a[j].zName, pTerm->pTab, pOther->pTab, &p->pWhere);
672 Table *pTab;
676 pTab = pTabList->a[j].pTab;
677 if( iCol<0 ) iCol = pTab->iPKey;
678 assert( iCol==-1 || (iCol>=0 && iCol<pTab->nCol) );
682 zType = pTab->aCol[iCol].zType;
726 Table *pTab;
731 pTab = pTabList->a[j].pTab;
732 if( iCol<0 ) iCol = pTab->iPKey;
733 assert( iCol==-1 || (iCol>=0 && iCol<pTab->nCol) );
737 zCol = pTab->aCol[iCol].zName;
747 if( fullNames || zTab==0 ) zTab = pTab->zName;
789 Table *pTab;
797 pTab = sqliteMalloc( sizeof(Table) );
798 if( pTab==0 ){
801 pTab->zName = zTabName ? sqliteStrDup(zTabName) : 0;
803 pTab->nCol = pEList->nExpr;
804 assert( pTab->nCol>0 );
805 pTab->aCol = aCol = sqliteMalloc( sizeof(pTab->aCol[0])*pTab->nCol );
806 for(i=0; i<pTab->nCol; i++){
825 sqliteSetNString(&pTab->aCol[i].zName, p->span.z, p->span.n, 0);
833 pTab->iPKey = -1;
834 return pTab;
840 ** (1) Fill in the pTabList->a[].pTab fields in the SrcList that
863 Table *pTab;
872 if( pTabList->a[i].pTab ){
885 pTabList->a[i].pTab = pTab =
888 if( pTab==0 ){
893 ** pTab is not pointing to a persistent table structure that defines
895 pTab->isTransient = 1;
898 pTabList->a[i].pTab = pTab =
900 if( pTab==0 ){
903 if( pTab->pSelect ){
905 if( sqliteViewGetColumnNames(pParse, pTab) ){
914 pTabList->a[i].pSelect = sqliteSelectDup(pTab->pSelect);
970 Table *pTab = pTabList->a[i].pTab;
973 zTabName = pTab->zName;
980 for(j=0; j<pTab->nCol; j++){
982 char *zName = pTab->aCol[j].zName;
985 columnIndex(pTabList->a[i-1].pTab, zName)>=0 ){
1038 ** This routine recursively unlinks the Select.pSrc.a[].pTab pointers
1046 ** If the bindings are not removed, then the Select.pSrc->a[].pTab field
1053 Table *pTab;
1056 if( (pTab = pSrc->a[i].pTab)!=0 ){
1057 if( pTab->isTransient ){
1058 sqliteDeleteTable(0, pTab);
1060 pSrc->a[i].pTab = 0;
1720 if( pSrc->a[iFrom].pTab && pSrc->a[iFrom].pTab->isTransient ){
1721 sqliteDeleteTable(0, pSrc->a[iFrom].pTab);
1850 Table *pTab;
1884 pTab = pSrc->a[0].pTab;
1895 for(pIdx=pTab->pIndex; pIdx; pIdx=pIdx->pNext){
1923 sqliteCodeVerifySchema(pParse, pTab->iDb);
1927 sqliteVdbeAddOp(v, OP_Integer, pTab->iDb, 0);
1928 sqliteVdbeOp3(v, OP_OpenRead, base, pTab->tnum, pTab->zName, 0);