• <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>

            為生存而奔跑

               :: 首頁 :: 聯系 :: 聚合  :: 管理
              271 Posts :: 0 Stories :: 58 Comments :: 0 Trackbacks

            留言簿(5)

            我參與的團隊

            搜索

            •  

            積分與排名

            • 積分 - 326887
            • 排名 - 74

            最新評論

            閱讀排行榜

            評論排行榜

            一、CRecordSet類中有一個成員變量m_pDatabase,它是指向數據庫類的指針??梢酝ㄟ^以下方式將數據集關聯到相應的數據庫上:

            1.CRecordSet rs;

               rs.m_pDatabase=&m_database;

            2.CRecordSet rs(&m_database);

            二、可以定義一個類,例如crs類,繼承于CRecordSet,在 DoFieldExchange(CFieldExchange* pFX)函數中將數據庫中的字段對應到該類(crs類)的成員變量中。這樣,就可以通過直接訪問該類中的成員變量,來訪問查詢出的記錄集中的數據庫中相應 的字段。注意,DoFieldExchange(CFieldExchange* pFX)中的字段數必須不能大于數據庫中的字段數。如果sql語句中有像select sum(num) as snum from **....   這樣,不能把snum也作為一個字段對應到crs類的一個成員變量中。此時可以直接定義一個CRecordSet類的實例rs ,通過rs.GetFieldValue(0,varsum) 函數得到。其中,0是rs中要查詢的字段的下標,從0開始。varsum是CDBVariant對象。通過varsum.m_iVal得到該字段的值(如 果該字段是int。但是sum函數求出的字段是double類型的,因此要用varsum.m_dblVal得到該子段的值)

            msdn example:

            // Create and open a database object;
            // do not load the cursor library
            CDatabase db;
            db.OpenEx(NULL, CDatabase::forceOdbcDialog);

            // Create and open a recordset object
            // directly from CRecordset. Note that a
            // table must exist in a connected database.
            // Use forwardOnly type recordset for best
            // performance, since only MoveNext is required
            CRecordset rs(&db);
            rs.Open(CRecordset::forwardOnly, _T("SELECT * FROM Customer"));

            // Create a CDBVariant object to
            // store field data
            CDBVariant varValue;

            // Loop through the recordset,
            // using GetFieldValue and
            // GetODBCFieldCount to retrieve
            // data in all columns
            short nFields = rs.GetODBCFieldCount();
            while(!rs.IsEOF())
            {
               for(short index = 0; index < nFields; index++)
               {
                  rs.GetFieldValue(index, varValue);
                  // do something with varValue
               }
               rs.MoveNext();
            }

            rs.Close();
            db.Close();

            三、當記錄集的屬性為CRecordset::forwardOnly時,可以不用講列與字段綁定

            但是當它為CRecordset::snapshot時,必須對應。

            posted on 2010-08-04 07:39 baby-fly 閱讀(2387) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm
            麻豆一区二区99久久久久| 亚洲精品99久久久久中文字幕 | 国产精品成人99久久久久91gav| 99re久久精品国产首页2020| 国内精品久久久久久久久| 亚洲第一永久AV网站久久精品男人的天堂AV | 久久青青国产| 久久青青草原精品国产| 国产精自产拍久久久久久蜜| 国内精品九九久久精品| 久久精品综合一区二区三区| 中文字幕久久波多野结衣av| 国产精品久久久久久一区二区三区 | 国内精品久久久久影院日本 | 91性高湖久久久久| 伊人久久久AV老熟妇色| 久久久精品视频免费观看| 精品国产乱码久久久久久郑州公司| 久久亚洲av无码精品浪潮| 亚洲国产精品久久久久婷婷软件| 亚洲国产视频久久| 久久中文精品无码中文字幕| 久久国产精品久久国产精品| 7777精品伊人久久久大香线蕉| 99久久精品免费国产大片| 丰满少妇人妻久久久久久| 麻豆AV一区二区三区久久| 国产精品亚洲综合久久| 一本色综合久久| 久久综合精品国产一区二区三区| 国产精品成人99久久久久| 国产福利电影一区二区三区,免费久久久久久久精 | 青青草原综合久久大伊人精品| 久久久久久久久波多野高潮| 久久亚洲精品无码播放| 久久99热这里只有精品国产| 色综合久久久久网| 久久精品无码一区二区日韩AV| 中文字幕成人精品久久不卡| 国内精品久久久久国产盗摄| 久久久久一本毛久久久|