• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            posts - 54, comments - 32, trackbacks - 0, articles - 0

            數(shù)據(jù)庫完整操作

            Posted on 2007-03-28 16:22 宋鵬 閱讀(1466) 評論(6)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)庫
            數(shù)據(jù)庫完整操作
            //定義變量
            // build database
            CEGUID m_ceguid;
            HANDLE m_hdb=0;
            CEOID m_ceoid=0;
            TCHAR DBFILENAME[20] = _T("\\abc.db");
            TCHAR DBTABLENAME[20] = _T("\\wang");

            //insert database
            CEOID ceoid =0;
            CEPROPVAL * pRorps;
            pRorps = new CEPROPVAL[2];

            //read data
            int iRecordCount;
            CEOIDINFO oidinfo;
            DWORD dwIndex;
            DWORD dwRecSize;
            WORD wProps;
            PBYTE pBuff;
            PCEPROPVAL pRecord;
            int i;
            int k;
            //開始使用
            case IDC_INSERT://CREATE DATABASE

            //1. 1ò??êy?Y?a£?2?′??ú?ò?¨á¢
            if (!CeMountDBVol(&m_ceguid,DBFILENAME,OPEN_ALWAYS))
            {
            MessageBox(NULL,TEXT("faile"),NULL,MB_OK);
            return 0;
            }
            else
            MessageBox(NULL,TEXT("build DB success"),NULL,MB_OK);
            //2. ′ò?a±í£?
            m_hdb = CeOpenDatabaseEx(&m_ceguid,&m_ceoid,DBTABLENAME,NULL,
            CEDB_AUTOINCREMENT,NULL);
            if (m_hdb == INVALID_HANDLE_VALUE)
            {
            //3. 2?′??ú?ò?¨á¢
            if (GetLastError() == ERROR_FILE_NOT_FOUND)
            {
            CEDBASEINFO cedbaseinfo;
            cedbaseinfo.dwFlags = CEDB_VALIDNAME | CEDB_VALIDTYPE
            | CEDB_VALIDSORTSPEC;
            wcscpy(cedbaseinfo.szDbaseName,DBTABLENAME);
            cedbaseinfo.dwDbaseType = 0;
            cedbaseinfo.wNumSortOrder = 1 ;//??Dòêy??
            cedbaseinfo.rgSortSpecs[0].propid = pid_no;
            cedbaseinfo.rgSortSpecs[0].dwFlags = CEDB_SORT_CASEINSENSITIVE;

            //
            m_ceoid = CeCreateDatabaseEx(&m_ceguid,&cedbaseinfo);
            if(m_ceoid==0)
            MessageBox(NULL,TEXT("faile"),NULL,MB_OK);
            else
            {
            m_hdb = CeOpenDatabaseEx(&m_ceguid,&m_ceoid,DBTABLENAME,NULL,
            CEDB_AUTOINCREMENT,NULL);
            MessageBox(NULL,TEXT("build table success"),NULL,MB_OK);
            }
            }


            }
            else
            MessageBox(NULL,TEXT("open table success"),NULL,MB_OK);

            ///insert record

            //
            memset(pRorps,0,LocalSize(pRorps));
            pRorps->propid = pid_no;
            pRorps->val.lpwstr = TEXT("1");
            //
            pRorps ++;
            //memset(pRorps,0,LocalSize(pRorps));
            pRorps->propid = pid_name;
            pRorps->val.lpwstr = TEXT("wang");

            pRorps --;

            ceoid = CeWriteRecordProps(m_hdb,0,2,pRorps);

            if (ceoid == 0)
            MessageBox(NULL,TEXT("insert failues"),NULL,MB_OK);
            else
            MessageBox(NULL,TEXT("insert success"),NULL,MB_OK);

            //read record
            //iRecordCount = CeGetRecordCount(&m_ceguid,m_ceoid);
            CeOidGetInfoEx(&m_ceguid,m_ceoid,&oidinfo);
            iRecordCount = oidinfo.infDatabase.wNumRecords;
            wsprintf(DBTABLENAME,TEXT("RECORD IS %d"),iRecordCount);
            MessageBox(NULL,DBTABLENAME,NULL,NULL);
            //
            for( i=0;i
            {
            ceoid =CeSeekDatabase(m_hdb,CEDB_SEEK_BEGINNING,i,&dwIndex);

            pBuff=0;
            ceoid=CeReadRecordProps(m_hdb,
            CEDB_ALLOWREALLOC,
            &wProps,
            NULL,
            & (LPBYTE)pBuff,
            &dwRecSize);
            pRecord =(PCEPROPVAL)pBuff;
            //
            for(k=0;k
            {
            switch(pRecord->propid)
            {
            case pid_no:
            wcscpy(DBTABLENAME,pRecord->val.lpwstr);
            MessageBox(NULL,DBTABLENAME,TEXT("NO"),NULL);

            break;
            //
            case pid_name:
            wcscpy(DBTABLENAME,pRecord->val.lpwstr);
            MessageBox(NULL,DBTABLENAME,TEXT("NAME"),NULL);

            break;
            }
            pRecord++;
            }//

            LocalFree(pBuff);
            }
            //delete
            ceoid = CeSeekDatabase(m_hdb,CEDB_SEEK_BEGINNING,2,NULL);
            if( CeDeleteRecord(m_hdb,ceoid))
            MessageBox(NULL,_T("DELE success"),NULL,NULL);

            if(CloseHandle(m_hdb))
            MessageBox(NULL,_T("close success"),NULL,NULL);

            if(CeUnmountDBVol(&m_ceguid))
            MessageBox(NULL,_T("unmount success"),NULL,NULL);


            //search


            break;

            Feedback

            # re: 數(shù)據(jù)庫完整操作 [未登錄]  回復  更多評論   

            2007-04-10 11:17 by RAINBOW
            請問實現(xiàn)排序的函數(shù)是哪個?

            # re: 數(shù)據(jù)庫完整操作 [未登錄]  回復  更多評論   

            2007-04-10 11:19 by RAINBOW
            WINCE自帶的數(shù)據(jù)庫里面已提供了四種排序方法,還需要另外做排序方法嗎?

            # re: 數(shù)據(jù)庫完整操作 [未登錄]  回復  更多評論   

            2007-04-10 11:25 by RAINBOW
            能給我點建詭議嗎?

            # re: 數(shù)據(jù)庫完整操作 [未登錄]  回復  更多評論   

            2007-04-10 11:26 by RAINBOW
            我收藏了你的博客!你的回復我可以看到!

            # re: 數(shù)據(jù)庫完整操作   回復  更多評論   

            2007-04-11 10:22 by 宋鵬
            應該不用別的了吧,我有個書里面帶的例程,你要不要

            # re: 數(shù)據(jù)庫完整操作 [未登錄]  回復  更多評論   

            2007-04-19 20:47 by RAINBOW
            是《EVC高級編程及其應用開發(fā)》這本書上的嗎?
            有沒有導出數(shù)據(jù)庫記錄到向量中的方法?
            天天爽天天狠久久久综合麻豆| 色诱久久久久综合网ywww| 无码AV波多野结衣久久| 色综合久久天天综线观看| 麻豆精品久久久一区二区| 国产精品久久影院| 精品久久久久久无码专区| 久久精品国产亚洲AV无码偷窥| 久久免费看黄a级毛片| 超级碰碰碰碰97久久久久| 久久精品国产99久久久古代| 久久精品人妻中文系列| 18岁日韩内射颜射午夜久久成人 | 久久人人爽人人爽人人片AV麻豆| 国产亚洲精久久久久久无码AV| 九九热久久免费视频| 久久九九久精品国产免费直播| 人人狠狠综合久久亚洲高清| 亚洲?V乱码久久精品蜜桃| 狠狠色婷婷久久一区二区| 久久精品毛片免费观看| 久久精品一区二区影院| 久久免费看黄a级毛片| 精品熟女少妇av免费久久| 久久99精品国产麻豆不卡| 亚洲国产精品综合久久网络| 亚洲午夜久久久影院| 一本一道久久精品综合| 色妞色综合久久夜夜| 国产精品久久久久无码av| 国产精品成人久久久久久久| 久久午夜福利无码1000合集| 国产精品岛国久久久久| 久久伊人影视| 伊人久久综在合线亚洲2019 | 久久中文字幕精品| 久久久久AV综合网成人| 久久影视国产亚洲| 国产午夜精品理论片久久影视| 亚洲七七久久精品中文国产 | 精品久久久久久国产免费了|