• <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 宋鵬 閱讀(1455) 評論(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ù)庫記錄到向量中的方法?
            97r久久精品国产99国产精| 人妻无码αv中文字幕久久琪琪布| 国产一久久香蕉国产线看观看| 久久综合九色综合久99| 日本精品久久久久影院日本| 久久久久亚洲av成人无码电影| 一本色道久久88综合日韩精品| 久久午夜伦鲁片免费无码| 狠狠精品久久久无码中文字幕 | 久久精品国产精品亚洲人人| 亚洲美日韩Av中文字幕无码久久久妻妇 | 品成人欧美大片久久国产欧美| 无码人妻久久一区二区三区免费 | 久久涩综合| 国产一久久香蕉国产线看观看| 久久综合九色综合久99| 国产精品国色综合久久| 亚洲精品国精品久久99热一| 午夜精品久久久久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 午夜天堂精品久久久久| 老司机午夜网站国内精品久久久久久久久 | 免费一级欧美大片久久网 | 亚洲欧美一级久久精品| 国产免费久久精品丫丫| 麻豆成人久久精品二区三区免费 | 国产精品久久永久免费| 亚洲精品乱码久久久久久久久久久久| 久久精品国产欧美日韩| 国产成人精品久久一区二区三区av| 精品永久久福利一区二区| 久久人人爽人人爽人人片AV东京热| 人妻系列无码专区久久五月天| 久久亚洲综合色一区二区三区| 国产成年无码久久久久毛片| 亚洲午夜久久久影院伊人| 综合久久给合久久狠狠狠97色| 欧美激情精品久久久久久久| 四虎亚洲国产成人久久精品| 久久受www免费人成_看片中文| 欧美亚洲国产精品久久|