Lines Matching refs:pCol
31221 SQLITE_PRIVATE char *sqlite3ColumnType(Column *pCol, char *zDflt){
31222 if( (pCol->colFlags & COLFLAG_HASTYPE)==0 ) return zDflt;
31223 return pCol->zName + strlen(pCol->zName) + 1;
97779 Column *pCol; /* A column of pTab */
97862 for(j=0, pCol=pTab->aCol; j<pTab->nCol; j++, pCol++){
97863 if( pCol->hName==hCol && sqlite3StrICmp(pCol->zName, zCol)==0 ){
97927 for(iCol=0, pCol=pTab->aCol; iCol<pTab->nCol; iCol++, pCol++){
97928 if( pCol->hName==hCol && sqlite3StrICmp(pCol->zName, zCol)==0 ){
102989 Column *pCol,
103001 sqlite3ExprCodeCopy(pParse, pCol->pDflt, regOut);
103002 if( pCol->affinity>=SQLITE_AFF_TEXT ){
103003 sqlite3VdbeAddOp4(v, OP_Affinity, regOut, 1, 0, &pCol->affinity, 1);
103019 Column *pCol;
103034 }else if( (pCol = &pTab->aCol[iCol])->colFlags & COLFLAG_VIRTUAL ){
103036 if( pCol->colFlags & COLFLAG_BUSY ){
103037 sqlite3ErrorMsg(pParse, "generated column loop on \"%s\"", pCol->zName);
103040 pCol->colFlags |= COLFLAG_BUSY;
103042 sqlite3ExprCodeGeneratedColumn(pParse, pCol, regOut);
103044 pCol->colFlags &= ~COLFLAG_BUSY;
103298 struct AggInfo_col *pCol;
103301 pCol = &pAggInfo->aCol[pExpr->iAgg];
103303 assert( pCol->iMem>0 );
103304 return pCol->iMem;
103306 Table *pTab = pCol->pTab;
103308 pCol->iSorterColumn, target);
103309 if( pCol->iColumn<0 ){
103312 VdbeComment((v,"%s.%s",pTab->zName,pTab->aCol[pCol->iColumn].zName));
103313 if( pTab->aCol[pCol->iColumn].affinity==SQLITE_AFF_REAL ){
103355 Column *pCol;
103365 pCol = pTab->aCol + iCol;
103369 if( pCol->colFlags & COLFLAG_GENERATED ){
103370 if( pCol->colFlags & COLFLAG_BUSY ){
103372 pCol->zName);
103375 pCol->colFlags |= COLFLAG_BUSY;
103376 if( pCol->colFlags & COLFLAG_NOTAVAIL ){
103377 sqlite3ExprCodeGeneratedColumn(pParse, pCol, iSrc);
103379 pCol->colFlags &= ~(COLFLAG_BUSY|COLFLAG_NOTAVAIL);
103383 if( pCol->affinity==SQLITE_AFF_REAL ){
105252 struct AggInfo_col *pCol;
105262 pCol = pAggInfo->aCol;
105263 for(k=0; k<pAggInfo->nColumn; k++, pCol++){
105264 if( pCol->iTable==pExpr->iTable &&
105265 pCol->iColumn==pExpr->iColumn ){
105272 pCol = &pAggInfo->aCol[k];
105273 pCol->pTab = pExpr->y.pTab;
105274 pCol->iTable = pExpr->iTable;
105275 pCol->iColumn = pExpr->iColumn;
105276 pCol->iMem = ++pParse->nMem;
105277 pCol->iSorterColumn = -1;
105278 pCol->pExpr = pExpr;
105288 pCol->iSorterColumn = j;
105293 if( pCol->iSorterColumn<0 ){
105294 pCol->iSorterColumn = pAggInfo->nSortingColumn++;
105779 Column *pCol; /* The new column */
105794 pCol = &pNew->aCol[pNew->nCol-1];
105795 pDflt = pCol->pDflt;
105811 if( pCol->colFlags & COLFLAG_PRIMKEY ){
105820 if( (pCol->colFlags & COLFLAG_GENERATED)==0 ){
105833 if( pCol->notNull && !pDflt ){
105857 }else if( pCol->colFlags & COLFLAG_STORED ){
105975 Column *pCol = &pNew->aCol[i];
105976 pCol->zName = sqlite3DbStrDup(db, pCol->zName);
105977 pCol->hName = sqlite3StrIHash(pCol->zName);
105978 pCol->zColl = 0;
105979 pCol->pDflt = 0;
110654 Column *pCol;
110656 if( (pCol = pTable->aCol)!=0 ){
110657 for(i=0; i<pTable->nCol; i++, pCol++){
110658 assert( pCol->zName==0 || pCol->hName==sqlite3StrIHash(pCol->zName) );
110659 sqlite3DbFree(db, pCol->zName);
110660 sqlite3ExprDelete(db, pCol->pDflt);
110661 sqlite3DbFree(db, pCol->zColl);
111252 SQLITE_PRIVATE void sqlite3ColumnPropertiesFromName(Table *pTab, Column *pCol){
111253 if( sqlite3_strnicmp(pCol->zName, "__hidden__", 10)==0 ){
111254 pCol->colFlags |= COLFLAG_HIDDEN;
111255 }else if( pTab && pCol!=pTab->aCol && (pCol[-1].colFlags & COLFLAG_HIDDEN) ){
111275 Column *pCol;
111304 pCol = &p->aCol[p->nCol];
111305 memset(pCol, 0, sizeof(p->aCol[0]));
111306 pCol->zName = z;
111307 pCol->hName = sqlite3StrIHash(z);
111308 sqlite3ColumnPropertiesFromName(p, pCol);
111313 pCol->affinity = SQLITE_AFF_BLOB;
111314 pCol->szEst = 1;
111317 pCol->colFlags |= COLFLAG_SORTERREF;
111325 pCol->affinity = sqlite3AffinityType(zType, pCol);
111326 pCol->colFlags |= COLFLAG_HASTYPE;
111341 Column *pCol;
111344 pCol = &p->aCol[p->nCol-1];
111345 pCol->notNull = (u8)onError;
111350 if( pCol->colFlags & COLFLAG_UNIQUE ){
111386 SQLITE_PRIVATE char sqlite3AffinityType(const char *zIn, Column *pCol){
111425 if( pCol ){
111443 pCol->colFlags |= COLFLAG_SORTERREF;
111448 pCol->szEst = v;
111470 Column *pCol;
111475 pCol = &(p->aCol[p->nCol-1]);
111478 pCol->zName);
111480 }else if( pCol->colFlags & COLFLAG_GENERATED ){
111481 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
111482 testcase( pCol->colFlags & COLFLAG_STORED );
111490 sqlite3ExprDelete(db, pCol->pDflt);
111496 pCol->pDflt = sqlite3ExprDup(db, &x, EXPRDUP_REDUCE);
111533 static void makeColumnPartOfPrimaryKey(Parse *pParse, Column *pCol){
111534 pCol->colFlags |= COLFLAG_PRIMKEY;
111536 if( pCol->colFlags & COLFLAG_GENERATED ){
111537 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
111538 testcase( pCol->colFlags & COLFLAG_STORED );
111571 Column *pCol = 0;
111583 pCol = &pTab->aCol[iCol];
111584 makeColumnPartOfPrimaryKey(pParse, pCol);
111596 pCol = &pTab->aCol[iCol];
111597 makeColumnPartOfPrimaryKey(pParse, pCol);
111605 && pCol
111606 && sqlite3StrICmp(sqlite3ColumnType(pCol,""), "INTEGER")==0
111702 Column *pCol;
111707 pCol = &(pTab->aCol[pTab->nCol-1]);
111712 if( pCol->pDflt ) goto generated_error;
111723 pCol->colFlags |= eType;
111727 if( pCol->colFlags & COLFLAG_PRIMKEY ){
111728 makeColumnPartOfPrimaryKey(pParse, pCol); /* For the error message */
111730 pCol->pDflt = pExpr;
111736 pCol->zName);
111835 Column *pCol;
111837 for(pCol = p->aCol, i=0; i<p->nCol; i++, pCol++){
111838 n += identLength(pCol->zName) + 5;
111860 for(pCol=p->aCol, i=0; i<p->nCol; i++, pCol++){
111874 identPut(zStmt, &k, pCol->zName);
111875 assert( pCol->affinity-SQLITE_AFF_BLOB >= 0 );
111876 assert( pCol->affinity-SQLITE_AFF_BLOB < ArraySize(azType) );
111877 testcase( pCol->affinity==SQLITE_AFF_BLOB );
111878 testcase( pCol->affinity==SQLITE_AFF_TEXT );
111879 testcase( pCol->affinity==SQLITE_AFF_NUMERIC );
111880 testcase( pCol->affinity==SQLITE_AFF_INTEGER );
111881 testcase( pCol->affinity==SQLITE_AFF_REAL );
111883 zType = azType[pCol->affinity - SQLITE_AFF_BLOB];
111885 assert( pCol->affinity==SQLITE_AFF_BLOB
111886 || pCol->affinity==sqlite3AffinityType(zType, 0) );
113700 Column *pCol = &pTab->aCol[pTab->nCol-1];
113701 pCol->colFlags |= COLFLAG_UNIQUE;
113702 sqlite3TokenInit(&prevCol, pCol->zName);
119176 Column *pCol;
119183 pCol = &pTab->aCol[iCol];
119185 pExpr->affExpr = pCol->affinity;
119186 zColl = pCol->zColl;
119519 Column *pCol = &pTab->aCol[iKey];
119521 if( 0==sqlite3StrICmp(pCol->zName, zKey) ) return 1;
119522 }else if( pCol->colFlags & COLFLAG_PRIMKEY ){
119970 Column *pCol = pFKey->pFrom->aCol + iFromCol;
119972 if( pCol->colFlags & COLFLAG_GENERATED ){
119973 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
119974 testcase( pCol->colFlags & COLFLAG_STORED );
119977 pDflt = pCol->pDflt;
120439 Column *pCol = pTab->aCol + i;
120440 if( (pCol->colFlags & COLFLAG_NOTAVAIL)!=0 ){
120442 pCol->colFlags |= COLFLAG_BUSY;
120444 sqlite3WalkExpr(&w, pCol->pDflt);
120445 pCol->colFlags &= ~COLFLAG_BUSY;
120447 pRedo = pCol;
120451 assert( pCol->colFlags & COLFLAG_GENERATED );
120453 sqlite3ExprCodeGeneratedColumn(pParse, pCol, x);
120454 pCol->colFlags &= ~COLFLAG_NOTAVAIL;
121713 Column *pCol = &pTab->aCol[i]; /* The column to check for NOT NULL */
121715 onError = pCol->notNull;
121720 isGenerated = pCol->colFlags & COLFLAG_GENERATED;
121736 || pCol->pDflt==0 /* REPLACE is ABORT if no DEFAULT value */
121738 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
121739 testcase( pCol->colFlags & COLFLAG_STORED );
121740 testcase( pCol->colFlags & COLFLAG_GENERATED );
121756 assert( (pCol->colFlags & COLFLAG_GENERATED)==0 );
121758 sqlite3ExprCodeCopy(pParse, pCol->pDflt, iReg);
121768 pCol->zName);
126487 Column *pCol;
126492 for(i=0, pCol=pTab->aCol; i<pTab->nCol; i++, pCol++){
126494 if( pCol->colFlags & COLFLAG_NOINSERT ){
126499 if( pCol->colFlags & COLFLAG_VIRTUAL ){
126501 }else if( pCol->colFlags & COLFLAG_STORED ){
126503 }else{ assert( pCol->colFlags & COLFLAG_HIDDEN );
126507 if( (pCol->colFlags & COLFLAG_PRIMKEY)==0 ){
126514 assert( pCol->pDflt==0 || pCol->pDflt->op==TK_SPAN || isHidden>=2 );
126517 pCol->zName,
126518 sqlite3ColumnType(pCol,""),
126519 pCol->notNull ? 1 : 0,
126520 pCol->pDflt && isHidden<2 ? pCol->pDflt->u.zToken : 0,
130796 Column *aCol, *pCol; /* For looping over result columns */
130816 for(i=0, pCol=aCol; i<nCol && !db->mallocFailed; i++, pCol++){
130861 pCol->zName = zName;
130862 pCol->hName = sqlite3StrIHash(zName);
130863 sqlite3ColumnPropertiesFromName(0, pCol);
130864 if( zName && sqlite3HashInsert(&ht, zName, pCol)==pCol ){
130900 Column *pCol;
130913 for(i=0, pCol=pTab->aCol; i<pTab->nCol; i++, pCol++){
130919 pCol->affinity = sqlite3ExprAffinity(p);
130922 n = sqlite3Strlen30(pCol->zName);
130923 pCol->zName = sqlite3DbReallocOrFree(db, pCol->zName, n+m+2);
130924 if( pCol->zName ){
130925 memcpy(&pCol->zName[n+1], zType, m+1);
130926 pCol->colFlags |= COLFLAG_HASTYPE;
130929 if( pCol->affinity<=SQLITE_AFF_NONE ) pCol->affinity = aff;
130931 if( pColl && pCol->zColl==0 ){
130932 pCol->zColl = sqlite3DbStrDup(db, pColl->zName);
135341 struct AggInfo_col *pCol = &sAggInfo.aCol[i];
135342 if( pCol->iSorterColumn>=j ){
135345 pCol->pTab, pCol->iTable, pCol->iColumn, r1);
137110 Column *pCol = &pTab->aCol[i];
137111 VdbeComment((v, "%s.%s", pTab->zName, pCol->zName));
137113 sqlite3ValueFromExpr(sqlite3VdbeDb(v), pCol->pDflt, enc,
137114 pCol->affinity, &pValue);
143572 Expr *pCol; /* Column reference */
143587 pCol = pList->a[1].pExpr;
143588 testcase( pCol->op==TK_COLUMN && pCol->y.pTab==0 );
143589 if( ExprIsVtab(pCol) ){
143594 *ppLeft = pCol;
143610 pCol = pList->a[0].pExpr;
143611 testcase( pCol->op==TK_COLUMN && pCol->y.pTab==0 );
143612 if( ExprIsVtab(pCol) ){
143617 pVtab = sqlite3GetVTable(db, pCol->y.pTab)->pVtab;
143626 *ppLeft = pCol;
163821 Column *pCol = 0;
163856 pCol = &pTab->aCol[iCol];
163857 if( 0==sqlite3StrICmp(pCol->zName, zColumnName) ){
163864 pCol = iCol>=0 ? &pTab->aCol[iCol] : 0;
163882 if( pCol ){
163883 zDataType = sqlite3ColumnType(pCol,0);
163884 zCollSeq = pCol->zColl;
163885 notnull = pCol->notNull!=0;
163886 primarykey = (pCol->colFlags & COLFLAG_PRIMKEY)!=0;