Lines Matching defs:pCol
33690 SQLITE_PRIVATE char *sqlite3ColumnType(Column *pCol, char *zDflt){
33691 if( pCol->colFlags & COLFLAG_HASTYPE ){
33692 return pCol->zCnName + strlen(pCol->zCnName) + 1;
33693 }else if( pCol->eCType ){
33694 assert( pCol->eCType<=SQLITE_N_STDTYPE );
33695 return (char*)sqlite3StdType[pCol->eCType-1];
103926 Column *pCol; /* A column of pTab */
104049 for(j=0, pCol=pTab->aCol; j<pTab->nCol; j++, pCol++){
104050 if( pCol->hName==hCol
104051 && sqlite3StrICmp(pCol->zCnName, zCol)==0
104146 for(iCol=0, pCol=pTab->aCol; iCol<pTab->nCol; iCol++, pCol++){
104147 if( pCol->hName==hCol
104148 && sqlite3StrICmp(pCol->zCnName, zCol)==0
109564 ** Generate code that will compute the value of generated column pCol
109570 Column *pCol, /* The generated column */
109582 sqlite3ExprCodeCopy(pParse, sqlite3ColumnExpr(pTab,pCol), regOut);
109583 if( pCol->affinity>=SQLITE_AFF_TEXT ){
109584 sqlite3VdbeAddOp4(v, OP_Affinity, regOut, 1, 0, &pCol->affinity, 1);
109600 Column *pCol;
109613 }else if( (pCol = &pTab->aCol[iCol])->colFlags & COLFLAG_VIRTUAL ){
109615 if( pCol->colFlags & COLFLAG_BUSY ){
109617 pCol->zCnName);
109620 pCol->colFlags |= COLFLAG_BUSY;
109622 sqlite3ExprCodeGeneratedColumn(pParse, pTab, pCol, regOut);
109624 pCol->colFlags &= ~COLFLAG_BUSY;
109939 struct AggInfo_col *pCol;
109942 pCol = &pAggInfo->aCol[pExpr->iAgg];
109944 assert( pCol->iMem>0 );
109945 return pCol->iMem;
109947 Table *pTab = pCol->pTab;
109949 pCol->iSorterColumn, target);
109950 if( pCol->iColumn<0 ){
109954 pTab->zName, pTab->aCol[pCol->iColumn].zCnName));
109955 if( pTab->aCol[pCol->iColumn].affinity==SQLITE_AFF_REAL ){
109996 Column *pCol;
110008 pCol = pTab->aCol + iCol;
110012 if( pCol->colFlags & COLFLAG_GENERATED ){
110013 if( pCol->colFlags & COLFLAG_BUSY ){
110015 pCol->zCnName);
110018 pCol->colFlags |= COLFLAG_BUSY;
110019 if( pCol->colFlags & COLFLAG_NOTAVAIL ){
110020 sqlite3ExprCodeGeneratedColumn(pParse, pTab, pCol, iSrc);
110022 pCol->colFlags &= ~(COLFLAG_BUSY|COLFLAG_NOTAVAIL);
110026 if( pCol->affinity==SQLITE_AFF_REAL ){
112083 struct AggInfo_col *pCol;
112093 pCol = pAggInfo->aCol;
112094 for(k=0; k<pAggInfo->nColumn; k++, pCol++){
112095 if( pCol->iTable==pExpr->iTable
112096 && pCol->iColumn==pExpr->iColumn
112105 pCol = &pAggInfo->aCol[k];
112107 pCol->pTab = pExpr->y.pTab;
112108 pCol->iTable = pExpr->iTable;
112109 pCol->iColumn = pExpr->iColumn;
112110 pCol->iMem = ++pParse->nMem;
112111 pCol->iSorterColumn = -1;
112112 pCol->pCExpr = pExpr;
112124 pCol->iSorterColumn = j;
112129 if( pCol->iSorterColumn<0 ){
112130 pCol->iSorterColumn = pAggInfo->nSortingColumn++;
112646 Column *pCol; /* The new column */
112663 pCol = &pNew->aCol[pNew->nCol-1];
112664 pDflt = sqlite3ColumnExpr(pNew, pCol);
112680 if( pCol->colFlags & COLFLAG_PRIMKEY ){
112689 if( (pCol->colFlags & COLFLAG_GENERATED)==0 ){
112703 if( pCol->notNull && !pDflt ){
112727 }else if( pCol->colFlags & COLFLAG_STORED ){
112774 || (pCol->notNull && (pCol->colFlags & COLFLAG_GENERATED)!=0)
112863 Column *pCol = &pNew->aCol[i];
112864 pCol->zCnName = sqlite3DbStrDup(db, pCol->zCnName);
112865 pCol->hName = sqlite3StrIHash(pCol->zCnName);
114398 RenameToken *pCol;
114418 pCol = renameTokenFind(&sParse, 0, (void*)pTab->aCol[iCol].zCnName);
114426 while( ALWAYS(pCol->t.z[0]!=0) && pCol->t.z[0]!=',' ) pCol->t.z--;
114429 zNew = sqlite3MPrintf(db, "%.*s%s", pCol->t.z-zSql, zSql, zEnd);
118157 Column *pCol, /* The column to receive the new DEFAULT expression */
118163 if( pCol->iDflt==0
118165 || NEVER(pList->nExpr<pCol->iDflt)
118167 pCol->iDflt = pList==0 ? 1 : pList->nExpr+1;
118170 sqlite3ExprDelete(pParse->db, pList->a[pCol->iDflt-1].pExpr);
118171 pList->a[pCol->iDflt-1].pExpr = pExpr;
118180 SQLITE_PRIVATE Expr *sqlite3ColumnExpr(Table *pTab, Column *pCol){
118181 if( pCol->iDflt==0 ) return 0;
118184 if( NEVER(pTab->u.tab.pDfltList->nExpr<pCol->iDflt) ) return 0;
118185 return pTab->u.tab.pDfltList->a[pCol->iDflt-1].pExpr;
118193 Column *pCol,
118200 n = sqlite3Strlen30(pCol->zCnName) + 1;
118201 if( pCol->colFlags & COLFLAG_HASTYPE ){
118202 n += sqlite3Strlen30(pCol->zCnName+n) + 1;
118205 zNew = sqlite3DbRealloc(db, pCol->zCnName, nColl+n);
118207 pCol->zCnName = zNew;
118208 memcpy(pCol->zCnName + n, zColl, nColl);
118209 pCol->colFlags |= COLFLAG_HASCOLL;
118216 SQLITE_PRIVATE const char *sqlite3ColumnColl(Column *pCol){
118218 if( (pCol->colFlags & COLFLAG_HASCOLL)==0 ) return 0;
118219 z = pCol->zCnName;
118221 if( pCol->colFlags & COLFLAG_HASTYPE ){
118233 Column *pCol;
118236 if( (pCol = pTable->aCol)!=0 ){
118237 for(i=0; i<pTable->nCol; i++, pCol++){
118238 assert( pCol->zCnName==0 || pCol->hName==sqlite3StrIHash(pCol->zCnName) );
118239 sqlite3DbFree(db, pCol->zCnName);
118875 SQLITE_PRIVATE void sqlite3ColumnPropertiesFromName(Table *pTab, Column *pCol){
118876 if( sqlite3_strnicmp(pCol->zCnName, "__hidden__", 10)==0 ){
118877 pCol->colFlags |= COLFLAG_HIDDEN;
118879 }else if( pTab && pCol!=pTab->aCol && (pCol[-1].colFlags & COLFLAG_HIDDEN) ){
118972 Column *pCol;
119042 pCol = &p->aCol[p->nCol];
119043 memset(pCol, 0, sizeof(p->aCol[0]));
119044 pCol->zCnName = z;
119045 pCol->hName = hName;
119046 sqlite3ColumnPropertiesFromName(p, pCol);
119051 pCol->affinity = affinity;
119052 pCol->eCType = eType;
119053 pCol->szEst = szEst;
119057 pCol->colFlags |= COLFLAG_SORTERREF;
119066 pCol->affinity = sqlite3AffinityType(zType, pCol);
119067 pCol->colFlags |= COLFLAG_HASTYPE;
119082 Column *pCol;
119085 pCol = &p->aCol[p->nCol-1];
119086 pCol->notNull = (u8)onError;
119091 if( pCol->colFlags & COLFLAG_UNIQUE ){
119127 SQLITE_PRIVATE char sqlite3AffinityType(const char *zIn, Column *pCol){
119164 /* If pCol is not NULL, store an estimate of the field size. The
119166 if( pCol ){
119184 pCol->colFlags |= COLFLAG_SORTERREF;
119189 pCol->szEst = v;
119211 Column *pCol;
119216 pCol = &(p->aCol[p->nCol-1]);
119219 pCol->zCnName);
119221 }else if( pCol->colFlags & COLFLAG_GENERATED ){
119222 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
119223 testcase( pCol->colFlags & COLFLAG_STORED );
119238 sqlite3ColumnSetExpr(pParse, p, pCol, pDfltExpr);
119274 static void makeColumnPartOfPrimaryKey(Parse *pParse, Column *pCol){
119275 pCol->colFlags |= COLFLAG_PRIMKEY;
119277 if( pCol->colFlags & COLFLAG_GENERATED ){
119278 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
119279 testcase( pCol->colFlags & COLFLAG_STORED );
119312 Column *pCol = 0;
119324 pCol = &pTab->aCol[iCol];
119325 makeColumnPartOfPrimaryKey(pParse, pCol);
119339 pCol = &pTab->aCol[iCol];
119340 makeColumnPartOfPrimaryKey(pParse, pCol);
119348 && pCol
119349 && pCol->eCType==COLTYPE_INTEGER
119452 Column *pCol;
119457 pCol = &(pTab->aCol[pTab->nCol-1]);
119462 if( pCol->iDflt>0 ) goto generated_error;
119473 pCol->colFlags |= eType;
119477 if( pCol->colFlags & COLFLAG_PRIMKEY ){
119478 makeColumnPartOfPrimaryKey(pParse, pCol); /* For the error message */
119480 sqlite3ColumnSetExpr(pParse, pTab, pCol, pExpr);
119486 pCol->zCnName);
119585 Column *pCol;
119587 for(pCol = p->aCol, i=0; i<p->nCol; i++, pCol++){
119588 n += identLength(pCol->zCnName) + 5;
119610 for(pCol=p->aCol, i=0; i<p->nCol; i++, pCol++){
119624 identPut(zStmt, &k, pCol->zCnName);
119625 assert( pCol->affinity-SQLITE_AFF_BLOB >= 0 );
119626 assert( pCol->affinity-SQLITE_AFF_BLOB < ArraySize(azType) );
119627 testcase( pCol->affinity==SQLITE_AFF_BLOB );
119628 testcase( pCol->affinity==SQLITE_AFF_TEXT );
119629 testcase( pCol->affinity==SQLITE_AFF_NUMERIC );
119630 testcase( pCol->affinity==SQLITE_AFF_INTEGER );
119631 testcase( pCol->affinity==SQLITE_AFF_REAL );
119633 zType = azType[pCol->affinity - SQLITE_AFF_BLOB];
119635 assert( pCol->affinity==SQLITE_AFF_BLOB
119636 || pCol->affinity==sqlite3AffinityType(zType, 0) );
120141 Column *pCol = &p->aCol[ii];
120142 if( pCol->eCType==COLTYPE_CUSTOM ){
120143 if( pCol->colFlags & COLFLAG_HASTYPE ){
120146 p->zName, pCol->zCnName, sqlite3ColumnType(pCol, "")
120150 p->zName, pCol->zCnName);
120153 }else if( pCol->eCType==COLTYPE_ANY ){
120154 pCol->affinity = SQLITE_AFF_BLOB;
120156 if( (pCol->colFlags & COLFLAG_PRIMKEY)!=0
120158 && pCol->notNull == OE_None
120160 pCol->notNull = OE_Abort;
121571 Column *pCol = &pTab->aCol[pTab->nCol-1];
121572 pCol->colFlags |= COLFLAG_UNIQUE;
121573 sqlite3TokenInit(&prevCol, pCol->zCnName);
127602 Column *pCol;
127609 pCol = &pTab->aCol[iCol];
127611 pExpr->affExpr = pCol->affinity;
127612 zColl = sqlite3ColumnColl(pCol);
127961 Column *pCol = &pTab->aCol[iKey];
127963 if( 0==sqlite3StrICmp(pCol->zCnName, zKey) ) return 1;
127964 }else if( pCol->colFlags & COLFLAG_PRIMKEY ){
128416 Column *pCol = pFKey->pFrom->aCol + iFromCol;
128418 if( pCol->colFlags & COLFLAG_GENERATED ){
128419 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
128420 testcase( pCol->colFlags & COLFLAG_STORED );
128423 pDflt = sqlite3ColumnExpr(pFKey->pFrom, pCol);
128953 Column *pCol = pTab->aCol + i;
128954 if( (pCol->colFlags & COLFLAG_NOTAVAIL)!=0 ){
128956 pCol->colFlags |= COLFLAG_BUSY;
128958 sqlite3WalkExpr(&w, sqlite3ColumnExpr(pTab, pCol));
128959 pCol->colFlags &= ~COLFLAG_BUSY;
128961 pRedo = pCol;
128965 assert( pCol->colFlags & COLFLAG_GENERATED );
128967 sqlite3ExprCodeGeneratedColumn(pParse, pTab, pCol, x);
128968 pCol->colFlags &= ~COLFLAG_NOTAVAIL;
130341 Column *pCol = &pTab->aCol[i]; /* The column to check for NOT NULL */
130343 onError = pCol->notNull;
130348 isGenerated = pCol->colFlags & COLFLAG_GENERATED;
130364 || pCol->iDflt==0 /* REPLACE is ABORT if no DEFAULT value */
130366 testcase( pCol->colFlags & COLFLAG_VIRTUAL );
130367 testcase( pCol->colFlags & COLFLAG_STORED );
130368 testcase( pCol->colFlags & COLFLAG_GENERATED );
130384 assert( (pCol->colFlags & COLFLAG_GENERATED)==0 );
130387 sqlite3ColumnExpr(pTab, pCol), iReg);
130397 pCol->zCnName);
135426 Column *pCol;
135430 for(i=0, pCol=pTab->aCol; i<pTab->nCol; i++, pCol++){
135433 if( pCol->colFlags & COLFLAG_NOINSERT ){
135438 if( pCol->colFlags & COLFLAG_VIRTUAL ){
135440 }else if( pCol->colFlags & COLFLAG_STORED ){
135442 }else{ assert( pCol->colFlags & COLFLAG_HIDDEN );
135446 if( (pCol->colFlags & COLFLAG_PRIMKEY)==0 ){
135453 pColExpr = sqlite3ColumnExpr(pTab,pCol);
135459 pCol->zCnName,
135460 sqlite3ColumnType(pCol,""),
135461 pCol->notNull ? 1 : 0,
136082 Column *pCol = pTab->aCol + j; /* The column to be checked */
136090 doTypeCheck = pCol->eCType>COLTYPE_ANY;
136092 doTypeCheck = pCol->affinity>SQLITE_AFF_BLOB;
136094 if( pCol->notNull==0 && !doTypeCheck ) continue;
136098 if( pCol->colFlags & COLFLAG_VIRTUAL ){
136103 if( pCol->iDflt ){
136105 sqlite3ValueFromExpr(db, sqlite3ColumnExpr(pTab,pCol), ENC(db),
136106 pCol->affinity, &pDfltValue);
136124 if( pCol->notNull ){
136130 pCol->zCnName);
136150 assert( pCol->eCType>=1 && pCol->eCType<=sizeof(aStdTypeMask) );
136151 sqlite3VdbeChangeP5(v, aStdTypeMask[pCol->eCType-1]);
136154 sqlite3StdType[pCol->eCType-1],
136157 }else if( !bStrict && pCol->affinity==SQLITE_AFF_TEXT ){
136166 }else if( !bStrict && pCol->affinity>=SQLITE_AFF_NUMERIC ){
138526 Column *pCol;
138527 for(pCol=pTab->aCol, i=0; i<pTab->nCol; pCol++, i++){
138528 if( pCol->hName==h && sqlite3StrICmp(pCol->zCnName, zCol)==0 ) return i;
140423 Column *aCol, *pCol; /* For looping over result columns */
140444 for(i=0, pCol=aCol; i<nCol && !db->mallocFailed; i++, pCol++){
140486 pCol->colFlags |= COLFLAG_NOEXPAND;
140496 pCol->zCnName = zName;
140497 pCol->hName = sqlite3StrIHash(zName);
140499 pCol->colFlags |= COLFLAG_NOEXPAND;
140501 sqlite3ColumnPropertiesFromName(0, pCol);
140538 Column *pCol;
140551 for(i=0, pCol=pTab->aCol; i<pTab->nCol; i++, pCol++){
140554 pTab->tabFlags |= (pCol->colFlags & COLFLAG_NOINSERT);
140557 /* pCol->szEst = ... // Column size est for SELECT tables never used */
140558 pCol->affinity = sqlite3ExprAffinity(p);
140561 n = sqlite3Strlen30(pCol->zCnName);
140562 pCol->zCnName = sqlite3DbReallocOrFree(db, pCol->zCnName, n+m+2);
140563 if( pCol->zCnName ){
140564 memcpy(&pCol->zCnName[n+1], zType, m+1);
140565 pCol->colFlags |= COLFLAG_HASTYPE;
140567 testcase( pCol->colFlags & COLFLAG_HASTYPE );
140568 pCol->colFlags &= ~(COLFLAG_HASTYPE|COLFLAG_HASCOLL);
140571 if( pCol->affinity<=SQLITE_AFF_NONE ) pCol->affinity = aff;
140575 sqlite3ColumnSetColl(db, pCol, pColl->zName);
145689 struct AggInfo_col *pCol = &pAggInfo->aCol[ii];
145693 ii, pCol->pTab ? pCol->pTab->zName : "NULL",
145694 pCol->iTable, pCol->iColumn, pCol->iMem,
145695 pCol->iSorterColumn);
145818 struct AggInfo_col *pCol = &pAggInfo->aCol[i];
145819 if( pCol->iSorterColumn>=j ){
145820 sqlite3ExprCode(pParse, pCol->pCExpr, j + regBase);
147369 Expr *pCol = pNew->a[i].pExpr;
147370 assert( pCol!=0 ); /* Due to !db->mallocFailed ~9 lines above */
147371 sqlite3ExprCodeFactorable(pParse, pCol, reg+i);
147372 if( sqlite3ExprAffinity(pCol)==SQLITE_AFF_REAL ){
147902 Column *pCol;
147905 pCol = &pTab->aCol[i];
147906 if( pCol->iDflt ){
147910 VdbeComment((v, "%s.%s", pTab->zName, pCol->zCnName));
147913 sqlite3ColumnExpr(pTab,pCol), enc,
147914 pCol->affinity, &pValue);
147920 if( pCol->affinity==SQLITE_AFF_REAL && !IsVirtual(pTab) ){
155066 Expr *pCol; /* Column reference */
155082 pCol = pList->a[1].pExpr;
155083 assert( pCol->op!=TK_COLUMN || (ExprUseYTab(pCol) && pCol->y.pTab!=0) );
155084 if( ExprIsVtab(pCol) ){
155090 *ppLeft = pCol;
155106 pCol = pList->a[0].pExpr;
155107 assert( pCol->op!=TK_COLUMN || ExprUseYTab(pCol) );
155108 assert( pCol->op!=TK_COLUMN || (ExprUseYTab(pCol) && pCol->y.pTab!=0) );
155109 if( ExprIsVtab(pCol) ){
155114 pVtab = sqlite3GetVTable(db, pCol->y.pTab)->pVtab;
155124 *ppLeft = pCol;
177258 Column *pCol = 0;
177293 pCol = &pTab->aCol[iCol];
177294 if( 0==sqlite3StrICmp(pCol->zCnName, zColumnName) ){
177301 pCol = iCol>=0 ? &pTab->aCol[iCol] : 0;
177317 ** explicitly declared column. Copy meta information from *pCol.
177319 if( pCol ){
177320 zDataType = sqlite3ColumnType(pCol,0);
177321 zCollSeq = sqlite3ColumnColl(pCol);
177322 notnull = pCol->notNull!=0;
177323 primarykey = (pCol->colFlags & COLFLAG_PRIMKEY)!=0;