Lines Matching defs:aDb
18465 ** in the sqlite.aDb[] array. aDb[0] is the main database file and
18466 ** aDb[1] is the database file used to hold temporary tables. Additional
18481 ** the Schema for the TEMP database (sqlite3.aDb[1]) which is free-standing.
18512 #define DbHasProperty(D,I,P) (((D)->aDb[I].pSchema->schemaFlags&(P))==(P))
18513 #define DbHasAnyProperty(D,I,P) (((D)->aDb[I].pSchema->schemaFlags&(P))!=0)
18514 #define DbSetProperty(D,I,P) (D)->aDb[I].pSchema->schemaFlags|=(P)
18515 #define DbClearProperty(D,I,P) (D)->aDb[I].pSchema->schemaFlags&=~(P)
18649 ** Maximum number of sqlite3.aDb[] entries. This is the number of attached
18662 Db *aDb; /* All backends */
18806 #define SCHEMA_ENC(db) ((db)->aDb[0].pSchema->enc)
20771 int iDb; /* Index in sqlite3.aDb[] of database holding pTab */
24323 i8 iDb; /* Index of cursor database in db->aDb[] */
24752 yDbMask btreeMask; /* Bitmask of db->aDb[] entries referenced */
25251 Btree *pBt = db->aDb[i].pBt;
25281 Schema *pSchema = db->aDb[i].pSchema;
25354 if( db->aDb[i].pBt ){
25355 Pager *pPager = sqlite3BtreePager(db->aDb[i].pBt);
25373 if( db->aDb[1].pBt ){
25374 Pager *pPager = sqlite3BtreePager(db->aDb[1].pBt);
25377 nRet *= sqlite3BtreeGetPageSize(db->aDb[1].pBt);
36521 if( db->aDb[ii].pBt ){
36522 iErr = sqlite3PagerWalSystemErrno(sqlite3BtreePager(db->aDb[ii].pBt));
56034 if( zSchema==0 ) zSchema = db->aDb[0].zDbSName;
56051 pBt = db->aDb[iDb].pBt;
56123 if( zSchema==0 ) zSchema = db->aDb[0].zDbSName;
73001 p = db->aDb[i].pBt;
73017 p = db->aDb[i].pBt;
73039 p = db->aDb[i].pBt;
73052 ** db->aDb[iDb].pSchema structure. The mutexes required for schema
73056 ** (2) if iDb!=1, then the mutex on db->aDb[iDb].pBt.
73069 p = db->aDb[iDb].pBt;
73092 Btree *p = db->aDb[i].pBt;
75750 Btree *pExisting = db->aDb[iDb].pBt;
75888 if( (pSib = db->aDb[i].pBt)!=0 && pSib->sharable ){
76370 if( (db=pBt->db)!=0 && (pDb=db->aDb)!=0 ){
76374 && pDb!=&db->aDb[1]
77355 if( db->aDb[iDb].pBt==p ) break;
77359 db->aDb[iDb].zDbSName,
84797 return pDb->aDb[i].pBt;
89750 ** Declare to the Vdbe that the BTree object at db->aDb[i] is used.
89761 if( i!=1 && sqlite3BtreeSharable(p->db->aDb[i].pBt) ){
89791 Db *aDb;
89795 aDb = db->aDb;
89798 if( i!=1 && DbMaskTest(p->lockMask,i) && ALWAYS(aDb[i].pBt!=0) ){
89799 sqlite3BtreeEnter(aDb[i].pBt);
89812 Db *aDb;
89815 aDb = db->aDb;
89818 if( i!=1 && DbMaskTest(p->lockMask,i) && ALWAYS(aDb[i].pBt!=0) ){
89819 sqlite3BtreeLeave(aDb[i].pBt);
90671 Btree *pBt = db->aDb[i].pBt;
90688 if( db->aDb[i].safety_level!=PAGER_SYNCHRONOUS_OFF
90720 if( 0==sqlite3Strlen30(sqlite3BtreeGetFilename(db->aDb[0].pBt))
90725 Btree *pBt = db->aDb[i].pBt;
90738 Btree *pBt = db->aDb[i].pBt;
90758 char const *zMainFile = sqlite3BtreeGetFilename(db->aDb[0].pBt);
90810 Btree *pBt = db->aDb[i].pBt;
90851 Btree *pBt = db->aDb[i].pBt;
90884 Btree *pBt = db->aDb[i].pBt;
90953 Btree *pBt = db->aDb[i].pBt;
94274 Btree *pBt = db->aDb[i].pBt;
94281 rc = db->xWalCallback(db->pWalArg, db, db->aDb[i].zDbSName, nEntry);
100389 rc = sqlite3BtreeTripAllCursors(db->aDb[ii].pBt,
100399 rc = sqlite3BtreeSavepoint(db->aDb[ii].pBt, p1, iSavepoint);
100572 pDb = &db->aDb[pOp->p1];
100636 if( db->aDb[pOp->p1].pSchema->schema_cookie!=iMeta ){
100673 assert( db->aDb[iDb].pBt!=0 );
100676 sqlite3BtreeGetMeta(db->aDb[iDb].pBt, iCookie, (u32 *)&iMeta);
100705 pDb = &db->aDb[pOp->p1];
100853 pDb = &db->aDb[iDb];
102226 zDb = db->aDb[pC->iDb].zDbSName;
102388 zDb = db->aDb[pC->iDb].zDbSName;
103393 rc = sqlite3BtreeDropTable(db->aDb[iDb].pBt, pOp->p1, &iMoved);
103433 rc = sqlite3BtreeClearTable(db->aDb[pOp->p2].pBt, (u32)pOp->p1, &nChange);
103491 pDb = &db->aDb[pOp->p1];
103574 assert( iDb==1 || sqlite3BtreeHoldsMutex(db->aDb[iDb].pBt) );
103586 sqlite3SchemaClear(db->aDb[iDb].pSchema);
103599 initData.mxPage = sqlite3BtreeLastPage(db->aDb[iDb].pBt);
103602 db->aDb[iDb].zDbSName, zSchema, pOp->p4.z);
103732 rc = sqlite3BtreeIntegrityCheck(db, db->aDb[pOp->p5].pBt, &aRoot[1],
104524 pBt = db->aDb[pOp->p1].pBt;
104628 pBt = db->aDb[pOp->p1].pBt;
104703 ** P1 is the index of the database in sqlite3.aDb[] of the database
104719 rc = sqlite3BtreeLockTable(db->aDb[p1].pBt, pOp->p2, isWriteLock);
104879 rc = pModule->xIntegrity(pVtab, db->aDb[pOp->p1].zDbSName, pTab->zName,
105220 pOut->u.i = sqlite3BtreeLastPage(db->aDb[pOp->p1].pBt);
105240 pBt = db->aDb[pOp->p1].pBt;
105540 sqlite3_file_control(db, db->aDb[j].zDbSName, SQLITE_FCNTL_TRACE, zTrace);
106029 pBlob->zDb = db->aDb[iDb].zDbSName;
107355 Btree *pBt = db->aDb[0].pBt;
107384 mxCache = db->aDb[0].pSchema->cache_size;
109385 pSchema = db->aDb[iDb].pSchema;
109386 pCur->zSchema = db->aDb[iDb].zDbSName;
110582 ** pExpr->iDb Set the index in db->aDb[] of the database X
110649 assert( db->aDb[i].zDbSName );
110650 if( sqlite3StrICmp(db->aDb[i].zDbSName,zDb)==0 ){
110651 pSchema = db->aDb[i].pSchema;
110658 pSchema = db->aDb[0].pSchema;
110659 zDb = db->aDb[0].zDbSName;
112632 if( pTab->pSchema!=pParse->db->aDb[1].pSchema ){
120498 zDb = db->aDb[iDb].zDbSName;
120687 zDb = db->aDb[iDb].zDbSName;
120900 pNew->pSchema = db->aDb[iDb].pSchema;
120977 zDb = db->aDb[iSchema].zDbSName;
121704 db->aDb[sqlite3SchemaToIndex(db, pNew->pTabSchema)].zDbSName
122537 const char *zDb = db->aDb[iSchema].zDbSName;
122605 int iDb; /* Index of db containing pTab in aDb[] */
122653 zDb = db->aDb[iDb].zDbSName;
123071 const char *zDb = db->aDb[sqlite3SchemaToIndex(db, pTab->pSchema)].zDbSName;
123107 *pzDb = db->aDb[iDb].zDbSName;
123613 pDb = &db->aDb[iDb];
124444 db->aDb[iDb].zDbSName ) ){
124809 Schema *pSchema = db->aDb[iDb].pSchema; /* Schema of database iDb */
124901 zDb = pName2->n ? db->aDb[iDb].zDbSName : 0;
125360 Schema *pSchema = db->aDb[iDb].pSchema;
125364 assert( db->aDb[iDb].pBt!=0 );
125383 sInfo.zDatabase = db->aDb[iDb].zDbSName;
125482 sqlite3StrICmp(db->aDb[iDb].zDbSName, zName)==0
125538 pNew = &db->aDb[db->init.iDb];
125554 ** Close the old db and update the aDb[] slot with the new memdb
125588 /* Allocate the new entry in the db->aDb[] array and initialize the schema
125591 if( db->aDb==db->aDbStatic ){
125592 aNew = sqlite3DbMallocRawNN(db, sizeof(db->aDb[0])*3 );
125594 memcpy(aNew, db->aDb, sizeof(db->aDb[0])*2);
125596 aNew = sqlite3DbRealloc(db, db->aDb, sizeof(db->aDb[0])*(1+(i64)db->nDb));
125599 db->aDb = aNew;
125600 pNew = &db->aDb[db->nDb];
125645 sqlite3BtreeSecureDelete(db->aDb[0].pBt,-1) );
125660 ** remove the entry from the db->aDb[] array. i.e. put everything back the
125684 if( db->aDb[iDb].pBt ){
125685 sqlite3BtreeClose(db->aDb[iDb].pBt);
125686 db->aDb[iDb].pBt = 0;
125687 db->aDb[iDb].pSchema = 0;
125737 pDb = &db->aDb[i];
125759 assert( db->aDb[1].pSchema );
125760 pEntry = sqliteHashFirst(&db->aDb[1].pSchema->trigHash);
125971 pFix->zDb = db->aDb[iDb].zDbSName;
125972 pFix->pSchema = db->aDb[iDb].pSchema;
126173 char *zDb = db->aDb[iDb].zDbSName; /* Schema name of attached database */
126419 if( !sqlite3BtreeSharable(pParse->db->aDb[iDb].pBt) ) return;
126534 pSchema = db->aDb[iDb].pSchema;
126670 if( sqlite3StrICmp(zDatabase, db->aDb[i].zDbSName)==0 ) break;
126681 p = sqlite3HashFind(&db->aDb[i].pSchema->tblHash, zName);
126688 p = sqlite3HashFind(&db->aDb[1].pSchema->tblHash,
126693 p = sqlite3HashFind(&db->aDb[i].pSchema->tblHash,
126700 p = sqlite3HashFind(&db->aDb[1].pSchema->tblHash, zName);
126703 p = sqlite3HashFind(&db->aDb[0].pSchema->tblHash, zName);
126708 p = sqlite3HashFind(&db->aDb[i].pSchema->tblHash, zName);
126713 p = sqlite3HashFind(&db->aDb[0].pSchema->tblHash, LEGACY_SCHEMA_TABLE);
126715 p = sqlite3HashFind(&db->aDb[1].pSchema->tblHash,
126815 zDb = pParse->db->aDb[iDb].zDbSName;
126858 Schema *pSchema = db->aDb[j].pSchema;
126896 pHash = &db->aDb[iDb].pSchema->idxHash;
126917 ** Look through the list of open database files in db->aDb[] and if
126919 ** db->aDb[] structure to a smaller size, if possible.
126927 struct Db *pDb = &db->aDb[i];
126934 db->aDb[j] = db->aDb[i];
126939 if( db->nDb<=2 && db->aDb!=db->aDbStatic ){
126940 memcpy(db->aDbStatic, db->aDb, 2*sizeof(db->aDb[0]));
126941 sqlite3DbFree(db, db->aDb);
126942 db->aDb = db->aDbStatic;
126965 sqlite3SchemaClear(db->aDb[i].pSchema);
126979 Db *pDb = &db->aDb[i];
127207 pDb = &db->aDb[iDb];
127253 ** function returns the index of the named database in db->aDb[], or
127260 for(i=(db->nDb-1), pDb=&db->aDb[i]; i>=0; i--, pDb--){
127273 ** index of the named database in db->aDb[], or -1 if the named db
127584 char *zDb = db->aDb[iDb].zDbSName;
127603 char *zDb = db->aDb[iDb].zDbSName;
127634 pTable->pSchema = db->aDb[iDb].pSchema;
127742 pHash = &(db->aDb[1].pSchema->trigHash);
127792 pRet->retTrig.pSchema = db->aDb[1].pSchema;
127793 pRet->retTrig.pTabSchema = db->aDb[1].pSchema;
127798 pHash = &(db->aDb[1].pSchema->trigHash);
128237 && !sqlite3BtreeIsReadonly(db->aDb[db->init.iDb].pBt)
128377 (int)(1+(unsigned)db->aDb[iDb].pSchema->schema_cookie));
129232 db->aDb[iDb].zDbSName,
129248 Db *pDb = &db->aDb[iDb];
129268 db->aDb[iDb].zDbSName, p->zName), P4_DYNAMIC);
129550 for(i=sqliteHashFirst(&db->aDb[idx].pSchema->tblHash); i;i=sqliteHashNext(i)){
129586 pDb = &db->aDb[iDb];
129629 pParse->db->aDb[iDb].zDbSName, iTable, r1, r1);
129696 const char *zDbName = pParse->db->aDb[iDb].zDbSName;
129716 Db *pDb = &db->aDb[iDb];
129735 pTrigger->pSchema==db->aDb[1].pSchema );
129859 const char *zDb = db->aDb[iDb].zDbSName;
130114 db->aDb[iDb].zDbSName ) ){
130332 if( pName2->n==0 && pTab && pTab->pSchema==db->aDb[1].pSchema ){
130347 if( iDb==1 && db->aDb[iDb].pSchema!=pTab->pSchema ){
130361 pDb = &db->aDb[iDb];
130506 pIndex->pSchema = db->aDb[iDb].pSchema;
130787 db->aDb[iDb].zDbSName,
130958 const char *zDb = db->aDb[iDb].zDbSName;
130976 db->aDb[iDb].zDbSName, pIndex->zName
131586 Btree *pBt = db->aDb[i].pBt;
131650 if( db->aDb[1].pBt==0 && !pParse->explain ){
131667 db->aDb[1].pBt = pBt;
131668 assert( db->aDb[1].pSchema );
131685 assert( pToplevel->db->aDb[iDb].pBt!=0 || iDb==1 );
131708 Db *pDb = &db->aDb[i];
131921 zDb = db->aDb[iReDb].zDbSName;
131945 for(iDb=0, pDb=db->aDb; iDb<db->nDb; iDb++, pDb++){
132850 pFrom->a[0].u4.zDatabase = sqlite3DbStrDup(db, db->aDb[iDb].zDbSName);
133083 db->aDb[iDb].zDbSName);
137889 Hash *pHash = &db->aDb[iDb].pSchema->tblHash;
138094 zDb = db->aDb[iDb].zDbSName;
138702 int iDb, /* The database index in sqlite3.aDb[] */
139088 assert( pParse->db->aDb[iDb].pSchema!=0 );
139094 Table *pSeqTab = pParse->db->aDb[iDb].pSchema->pSeqTab;
139163 pDb = &db->aDb[p->iDb];
139223 Db *pDb = &db->aDb[p->iDb];
139643 db->aDb[iDb].zDbSName) ){
144729 if( db->aDb[1].pBt!=0 ){
144731 || sqlite3BtreeTxnState(db->aDb[1].pBt)!=SQLITE_TXN_NONE
144737 sqlite3BtreeClose(db->aDb[1].pBt);
144738 db->aDb[1].pBt = 0;
144811 Db *pDb = db->aDb;
145017 ** index of the database this pragma is being applied to in db.aDb[]. */
145020 pDb = &db->aDb[iDb];
145206 sqlite3BtreeSecureDelete(db->aDb[ii].pBt, b);
145277 assert(pDb==&db->aDb[0]);
145279 pPager = sqlite3BtreePager(db->aDb[ii].pBt);
145333 if( db->aDb[ii].pBt && (ii==iDb || pId2->n==0) ){
145529 if( db->aDb[ii].pBt && (ii==iDb || pId2->n==0) ){
145530 sqlite3BtreeSetMmapLimit(db->aDb[ii].pBt, sz);
145851 if( zDb && sqlite3_stricmp(zDb, db->aDb[ii].zDbSName)!=0 ) continue;
145858 pHash = &db->aDb[ii].pSchema->tblHash;
145878 pHash = &db->aDb[ii].pSchema->tblHash;
145898 db->aDb[ii].zDbSName,
146008 if( db->aDb[i].pBt==0 ) continue;
146009 assert( db->aDb[i].zDbSName!=0 );
146012 db->aDb[i].zDbSName,
146013 sqlite3BtreeGetFilename(db->aDb[i].pBt));
146127 k = sqliteHashFirst(&db->aDb[iDb].pSchema->tblHash);
146138 zDb = db->aDb[iDb].zDbSName;
146294 iDb>=0 ? db->aDb[iDb].zDbSName : 0);
146318 pTbls = &db->aDb[i].pSchema->tblHash;
146354 sqlite3MPrintf(db, "*** in database %s ***\n", db->aDb[i].zDbSName),
147118 pSchema = db->aDb[iDb].pSchema;
147180 db->aDb[iDb].zDbSName, pTab->zName);
147321 if( db->aDb[i].zDbSName==0 ) continue;
147322 pBt = db->aDb[i].pBt;
147325 }else if( sqlite3_file_control(db, i ? db->aDb[i].zDbSName : 0,
147329 sqlite3VdbeMultiLoad(v, 1, "ss", db->aDb[i].zDbSName, zState);
147850 pIndex = sqlite3FindIndex(db, argv[1], db->aDb[iDb].zDbSName);
147891 assert( db->aDb[iDb].pSchema );
147893 assert( iDb==1 || sqlite3BtreeHoldsMutex(db->aDb[iDb].pBt) );
147925 pDb = &db->aDb[iDb];
148043 db->aDb[iDb].zDbSName, zSchemaTabName);
148063 assert( pDb == &(db->aDb[iDb]) );
148067 pDb = &db->aDb[iDb];
148119 assert( sqlite3BtreeHoldsMutex(db->aDb[0].pBt) );
148130 assert( i==1 || sqlite3BtreeHoldsMutex(db->aDb[i].pBt) );
148178 Btree *pBt = db->aDb[iDb].pBt; /* Btree database to read cookie from */
148199 if( cookie!=db->aDb[iDb].pSchema->schema_cookie ){
148213 ** which database file in db->aDb[] the schema refers to.
148227 ** -32768 as the incorrect index into db->aDb[] is much
148236 if( db->aDb[i].pSchema==pSchema ){
148425 Btree *pBt = db->aDb[i].pBt;
148430 const char *zDb = db->aDb[i].zDbSName;
150793 zOrigDb = pNC->pParse->db->aDb[iDb].zDbSName;
154819 && pTab->pSchema!=db->aDb[1].pSchema
154954 zSchemaName = iDb>=0 ? db->aDb[iDb].zDbSName : "*";
156743 zDb = db->aDb[iDb].zDbSName;
157996 pTmpSchema = pParse->db->aDb[1].pSchema;
158109 && pTab->pSchema==db->aDb[1].pSchema ){
158146 if( sqlite3HashFind(&(db->aDb[iDb].pSchema->trigHash),zName) ){
158187 const char *zDb = db->aDb[iTabDb].zDbSName;
158188 const char *zDbTrig = isTemp ? db->aDb[1].zDbSName : zDb;
158214 pTrigger->pSchema = db->aDb[iDb].pSchema;
158334 db->aDb[iDb].zDbSName, zName,
158344 Hash *pHash = &db->aDb[iDb].pSchema->trigHash;
158420 && pNew->pSchema!=db->aDb[1].pSchema
158619 pTrigger = sqlite3HashFind(&(db->aDb[j].pSchema->trigHash), zName);
158662 const char *zDb = db->aDb[iDb].zDbSName;
158677 db->aDb[iDb].zDbSName, pTrigger->zName
158692 pHash = &(db->aDb[iDb].pSchema->trigHash);
158734 if( NEVER(db->aDb[1].pSchema==0) ) return 0;
158735 if( sqliteHashFirst(&db->aDb[1].pSchema->trigHash)==0 ) return 0;
159419 || p->pSchema==pParse->db->aDb[1].pSchema );
160014 db->aDb[iDb].zDbSName);
161406 zDbMain = db->aDb[iDb].zDbSName;
161407 pMain = db->aDb[iDb].pBt;
161431 pDb = &db->aDb[nDb];
161449 pgflags = db->aDb[iDb].safety_level | (db->flags & PAGER_FLAGS_MASK);
161461 sqlite3BtreeSetCacheSize(pTemp, db->aDb[iDb].pSchema->cache_size);
161623 /* This both clears the schemas and reduces the size of the db->aDb[]
162057 pTable->u.vtab.azArg[0], pParse->db->aDb[iDb].zDbSName);
162125 db->aDb[iDb].zDbSName,
162236 pTab->u.vtab.azArg[1] = db->aDb[iDb].zDbSName;
162409 pTab = sqlite3FindTable(db, zTab, db->aDb[iDb].zDbSName);
162563 pTab = sqlite3FindTable(db, zTab, db->aDb[iDb].zDbSName);
162908 pTab->pSchema = db->aDb[0].pSchema;
188013 Btree *pBt = db->aDb[i].pBt;
188039 Btree *pBt = db->aDb[i].pBt;
188070 db->aDb[0].zDbSName = va_arg(ap,char*);
188322 Schema *pSchema = db->aDb[i].pSchema;
188352 Btree *pBt = db->aDb[j].pBt;
188441 Btree *pBt = db->aDb[iDb].pBt;
188500 struct Db *pDb = &db->aDb[j];
188510 if( db->aDb[1].pSchema ){
188511 sqlite3SchemaClear(db->aDb[1].pSchema);
188512 assert( db->aDb[1].pSchema->trigHash.count==0 );
188519 assert( db->aDb==db->aDbStatic );
188569 sqlite3DbFree(db, db->aDb[1].pSchema);
188607 Btree *p = db->aDb[i].pBt;
188985 Btree *pBt = db->aDb[iDb].pBt;
189764 rc = sqlite3BtreeCheckpoint(db->aDb[i].pBt, eMode, pnLog, pnCkpt);
190514 db->aDb = db->aDbStatic;
190683 rc = sqlite3BtreeOpen(db->pVfs, zOpen, db, &db->aDb[0].pBt, 0,
190692 sqlite3BtreeEnter(db->aDb[0].pBt);
190693 db->aDb[0].pSchema = sqlite3SchemaGet(db, db->aDb[0].pBt);
190697 sqlite3BtreeLeave(db->aDb[0].pBt);
190698 db->aDb[1].pSchema = sqlite3SchemaGet(db, 0);
190703 db->aDb[0].zDbSName = "main";
190704 db->aDb[0].safety_level = SQLITE_DEFAULT_SYNCHRONOUS+1;
190705 db->aDb[1].zDbSName = "temp";
190706 db->aDb[1].safety_level = PAGER_SYNCHRONOUS_OFF;
190751 sqlite3PagerLockingMode(sqlite3BtreePager(db->aDb[0].pBt),
191365 assert( db==0 || db->aDb[0].pSchema!=0 );
191366 if( db && (y = db->aDb[0].pSchema->schema_cookie)!=0 ){ x = y; }
191779 *pn = sqlite3BtreeSeekCount(db->aDb->pBt);
192067 return iDb<0 ? 0 : db->aDb[iDb].pBt;
192084 return db->aDb[N].zDbSName;
192143 Btree *pBt = db->aDb[iDb].pBt;
192183 Btree *pBt = db->aDb[iDb].pBt;
192235 Btree *pBt = db->aDb[iDb].pBt;
231882 Btree *pBt = pTab->db->aDb[pTab->iDb].pBt;
231945 Btree *pBt = pTab->db->aDb[pCsr->iDb].pBt;
232151 pTab->db->aDb[pCsr->iDb].zDbSName);
232223 sqlite3_result_text(ctx, db->aDb[iDb].zDbSName, -1, SQLITE_STATIC);
232534 pBt = db->aDb[pCsr->iDb].pBt;
232586 sqlite3_result_text(ctx, db->aDb[pCsr->iDb].zDbSName, -1, SQLITE_STATIC);
232611 Btree *pBt = db->aDb[i].pBt;
232664 pBt = pTab->db->aDb[iDb].pBt;
232724 Btree *pBt = pTab->db->aDb[pTab->iDbTrunc].pBt;
238608 db->aDb[0].pSchema->schema_cookie -= 32;
238791 db->aDb[0].pSchema->schema_cookie -= 32;