2,209
社区成员
发帖
与我相关
我的任务
分享
unsigned char zDbHeader[100];
sqlite3PagerReadFileheader(pBt->pPager,sizeof(zDbHeader),zDbHeader);
pBt->pageSize = get2byte(&zDbHeader[16]);
nReserve = zDbHeader[20];
pBt->maxEmbedFrac = zDbHeader[21];
pBt->minEmbedFrac = zDbHeader[22];
pBt->minLeafFrac = zDbHeader[23];
if( pBt->pageSize<512 || pBt->pageSize>SQLITE_MAX_PAGE_SIZE
|| ((pBt->pageSize-1)&pBt->pageSize)!=0 )
{
pBt->pageSize = 0;
sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize);
pBt->maxEmbedFrac = 64; /* 25% */
pBt->minEmbedFrac = 32; /* 12.5% */
pBt->minLeafFrac = 32; /* 12.5% */
}
sqlite3_exec( db, "select * from MyTable_1", LoadMyInfo, NULL, &errmsg );
的时候pageSize = get2byte(&page1[16]);
assert( (pageSize & 7)==0 );
pBt->pageSize = pageSize;
pBt->usableSize = pageSize - page1[20];
pBt->maxEmbedFrac = page1[21];
pBt->minEmbedFrac = page1[22];
pBt->minLeafFrac = page1[23];