亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chap10_5.htm

?? VC++編程實例。非常詳細
?? HTM
?? 第 1 頁 / 共 3 頁
字號:
              </td>
              <td width="14%">
                <p align="JUSTIFY">3
              </td>
              <td width="18%">
                <p align="JUSTIFY">KLAUSENJ
              </td>
              <td width="19%">
                <p align="JUSTIFY">WIL-2033
              </td>
              <td width="18%">
                <p align="JUSTIFY">TTH3-4:30
              </td>
              <td width="14%">
                <p align="JUSTIFY">15
              </td>
            </tr>
          </table>
          <b>
          <p align="JUSTIFY">清單10.1 派生類中的域數據成員</p>
          </b>
          <blockquote>
            <blockquote> <b> </b>
              <p align="JUSTIFY">class CSectionSet : public CRecordset</p>
              <p align="JUSTIFY">{</p>
              <p align="JUSTIFY">public:</p>
              <p align="JUSTIFY"><b>. . . . . .</b></p>
              <p align="JUSTIFY">//{{AFX_FIELD(CSectionSet, CRecordset)</p>
              <p align="JUSTIFY">CString m_CourseID;</p>
              <p align="JUSTIFY">CString m_SectionNo;</p>
              <p align="JUSTIFY">CString m_InstructorID;</p>
              <p align="JUSTIFY">CString m_RoomNo;</p>
              <p align="JUSTIFY">CString m_Schedule;</p>
              <p align="JUSTIFY">int m_Capacity;</p>
              <p align="JUSTIFY">//}}AFX_FIELD</p>
              <p align="JUSTIFY"><b>. . . . . .</b></p>
              <p align="JUSTIFY">};</p>
              <p align="JUSTIFY"> </p>
            </blockquote>
          </blockquote>
          <p align="JUSTIFY">  域數據成員用來保存某條記錄的各個字段,它們是程序與記錄之間的緩沖區.域數據成員代表當前記錄,當在記錄集中滾動到某一記錄時,框架自動地把記錄的各個字段拷貝到記錄集對象的域數據成員中.當用戶要修改當前記錄或增加新記錄時,程序先將各字段的新值放入域數據成員中,然后調用相應的CRecordset成員函數把域數據成員設置到數據源中.</p>
          <p align="JUSTIFY">  不難看出,在記錄集與數據源之間有一個數據交換問題.CRecordset類使用"記錄域交換"(Record 
            Field Exchange,縮寫為RFX)機制自動地在域數據成員和數據源之間交換數據.RFX機制與對話數據交換(DDX)類似.CRecordset的成員函數DoFieldExchange負責數據交換任務,在該函數中調用了一系列RFX函數.當用戶用ClassWizard加入域數據成員時,ClassWizard會自動在DoFieldExchange中建立RFX.典型DoFieldExchange如清單10.2所示:</p>
          <p align="JUSTIFY">清單10.2 典型的DoFieldExchange函數</p>
          <b></b> 
          <p align="JUSTIFY">void CSectionSet::DoFieldExchange(CFieldExchange* 
            pFX)</p>
          <p align="JUSTIFY">{</p>
          <p align="JUSTIFY">//{{AFX_FIELD_MAP(CSectionSet)</p>
          <p align="JUSTIFY">pFX-&gt;SetFieldType(CFieldExchange::outputColumn);</p>
          <p align="JUSTIFY">RFX_Text(pFX, _T(&quot;[CourseID]&quot;), m_CourseID);</p>
          <p align="JUSTIFY">RFX_Text(pFX, _T(&quot;[SectionNo]&quot;), m_SectionNo);</p>
          <p align="JUSTIFY">RFX_Text(pFX, _T(&quot;[InstructorID]&quot;), m_InstructorID);</p>
          <p align="JUSTIFY">RFX_Text(pFX, _T(&quot;[RoomNo]&quot;), m_RoomNo);</p>
          <p align="JUSTIFY">RFX_Text(pFX, _T(&quot;[Schedule]&quot;), m_Schedule);</p>
          <p align="JUSTIFY">RFX_Int(pFX, _T(&quot;[Capacity]&quot;), m_Capacity);</p>
          <p align="JUSTIFY">//}}AFX_FIELD_MAP</p>
          <p align="JUSTIFY">}</p>
          <p><b> </b></p>
          <p align="JUSTIFY"> <b></b> </p>
          <p align="JUSTIFY"><b></b><font color="#3973DE" face="Times New Roman" size="3">10.5.3 
            SQL</font><font size="3" color="#3973DE">查詢</font></p>
          <p align="JUSTIFY">  記錄集的建立實際上主要是一個查詢過程,SQL的SELECT語句用來查詢數據源.在建立記錄集時,CRecordset會根據一些參數構造一個SELECT語句來查詢數據源,并用查詢的結果創建記錄集.明白這一點對理解CRecordset至關重要.SELECT語句的句法如下:</p>
          <p align="JUSTIFY">SELECT rfx-field-list FROM table-name [WHERE m_strFilter] 
          </p>
          <p align="JUSTIFY">[ORDER BY m_strSort]</p>
          <p align="JUSTIFY"><b></b>  其中table-name是表名,rfx-field-list是選擇的列(字段).WHERE和ORDER 
            BY是兩個子句,分別用來過濾和排序。下面是SELECT語句的一些例子:</p>
          <blockquote> 
            <p align="JUSTIFY">SELECT CourseID, InstructorID FROM Section </p>
            <p align="JUSTIFY">SELECT * FROM Section WHERE CourseID=‘MATH202’ 
              AND Capacity=15</p>
            <p align="JUSTIFY">SELECT InstructorID FROM Section ORDER BY CourseID 
              ASC</p>
          </blockquote>
          <p align="JUSTIFY">  其中第一個語句從Section表中選擇CourseID和InstructorID字段.第二個語句從Section表中選擇CourseID為MATH202且Capacity等于15的記錄,在該語句中使用了象"AND"或"OR"這樣的邏輯連接符.要注意在SQL語句中引用字符串、日期或時間等類型的數據時要用單引號括起來,而數值型數據則不用.第三個語句從Section表中選擇InstructorID列并且按CourseID的升序排列,若要降序排列,可使用關鍵字DESC.</p>
          <div align="center">
            <center>
              <table border="2" cellpadding="2" cellspacing="0" width="100%" bgcolor="#71D0FF">
                <tr> 
                  <td width="100%"> <b></b>提示:如果列名或表名中包含有空格,則必需用方括號把該名稱包起來。例如,如果有一列名為“Client 
                    Name”,則應該寫成“[Client Name]”。<b></b></td>
                </tr>
              </table>
            </center>
          </div>
          <p align="JUSTIFY"> </p>
          <p align="JUSTIFY"><font color="#3973DE" face="Times New Roman" size="3">10.5.4 
            </font><font size="3" color="#3973DE">記錄集的建立和關閉</font></p>
          <p align="JUSTIFY">  要建立記錄集,首先要構造一個CRecordset派生類對象,然后調用Open成員函數查詢數據源中的記錄并建立記錄集.在Open函數中,可能會調用GetDefaultConnect和GetDefaultSQL函數.函數的聲明為</p>
          <blockquote> 
            <blockquote> 
              <p align="JUSTIFY">CRecordset( CDatabase* pDatabase = NULL);<br>
                參數pDatabase指向一個CDatabase對象,用來獲取數據源.如果pDatabase為NULL,則會在Open函數中自動構建一個CDatabase對象.如果CDatabase對象還未與數據源連接,那么在Open函數中會建立連接,連接字符串(參見10.3.1)由成員函數GetDefaultConnect提供.</p>
              <p align="JUSTIFY">virtual CString GetDefaultConnect( );<br>
                該函數返回缺省的連接字符串.Open函數在必要的時侯會調用該函數獲取連接字符串以建立與數據源的連接.一般需要在CRecordset派生類中覆蓋該函數并在新版的函數中提供連接字符串.</p>
              <p align="JUSTIFY">virtual BOOL Open( UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE, 
                LPCTSTR lpszSQL = NULL, DWORD dwOptions = none );<br>
                throw( CDBException, CMemoryException );<br>
                該函數使用指定的SQL語句查詢數據源中的記錄并按指定的類型和選項建立記錄集.參數nOpenType說明了記錄集的類型,如表10.3所示,如果要求的類型驅動程序不支持,則函數將產生一個異常.參數lpszSQL是一個SQL的SELECT語句,或是一個表名.函數用lpszSQL來進行查詢,如果該參數為NULL,則函數會調用GetDefaultSQL獲取缺省的SQL語句.參數dwOptions可以是一些選項的組合,常用的選項在表10.4中列出.若創建成功則函數返回TRUE,若函數調用了CDatabase::Open且返回FALSE,則函數返回FALSE.</p>
            </blockquote>
          </blockquote>
          <p><b> </b></p>
          <b> 
          <p align="CENTER">表10.3 記錄集的類型</p>
          </b> 
          <table border="1" cellspacing="1" cellpadding="1" width="579">
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">類型
              </td>
              <td width="61%">
                <p align="JUSTIFY">含義
              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">AFX_DB_USE_DEFAULT_TYPE
              </td>
              <td width="61%">
                <p align="JUSTIFY">使用缺省值.
              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">CRecordset::dynaset
              </td>
              <td width="61%">
                <p align="JUSTIFY">可雙向滾動的動態集.
              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">CRecordset::snapshot
              </td>
              <td width="61%">
                <p align="JUSTIFY">可雙向滾動的快照.
              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">CRecordset::dynamic
              </td>
              <td width="61%">
                <p align="JUSTIFY">提供比動態集更好的動態特性,大部分ODBC驅動程序不支持這種記錄集.
              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">CRecordset::forwardOnly
              </td>
              <td width="61%">
                <p align="JUSTIFY">只能前向滾動的只讀記錄集.
              </td>
            </tr>
          </table>
          <p> </p>
          <p align="JUSTIFY"> </p>
          <p align="CENTER"><b>表10.4 創建記錄集時的常用選項</b></p>
          <table border="1" cellspacing="1" cellpadding="1" width="579">
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">選項
              </td>
              <td width="61%">
                <p align="JUSTIFY">含義
              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">CRecordset::none
              </td>
              <td width="61%">
                <p align="JUSTIFY">無選項(缺?。?              </td>
            </tr>
            <tr> 
              <td width="39%">
                <p align="JUSTIFY">CRecordset::appendOnly
              </td>
              <td width="61%">
                <p align="JUSTIFY">不允許修改和刪除記錄,但可以添加記錄.
              </td>
            </tr>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
夜夜精品视频一区二区| 国产制服丝袜一区| 成人精品国产福利| 久久一区二区三区四区| 亚洲午夜久久久| 99热国产精品| 亚洲特黄一级片| 99久久99久久综合| 国产精品麻豆欧美日韩ww| 国产老妇另类xxxxx| 欧美精品一区二区三区很污很色的 | 国产在线看一区| 欧美大片在线观看| 久久99日本精品| 久久亚洲春色中文字幕久久久| 蜜臀av性久久久久蜜臀av麻豆| 久久草av在线| 精品国产123| 懂色av一区二区三区免费观看| 久久久精品免费观看| 国产91丝袜在线播放0| 中文字幕一区二区三区不卡| fc2成人免费人成在线观看播放| 欧美激情一二三区| 成人开心网精品视频| 亚洲小说春色综合另类电影| 国产在线播放一区三区四| 欧美成人综合网站| av在线播放成人| 日韩国产一二三区| 欧美精品一区二区三区蜜桃视频| 99视频在线观看一区三区| 亚洲一区二区三区四区在线免费观看| 欧美日韩在线播| 国内精品嫩模私拍在线| 中文字幕欧美区| 国产91综合一区在线观看| 日韩精品一区国产麻豆| 国产福利一区二区三区在线视频| 亚洲色图视频网站| 久久久久久久久久电影| 日韩午夜激情av| 欧美一区二区免费| 91电影在线观看| av高清不卡在线| 国产成人精品免费| 国产精品一线二线三线精华| 亚洲h在线观看| 亚洲国产综合色| 亚洲欧美另类久久久精品2019| 国产午夜精品理论片a级大结局| 欧美国产日韩在线观看| 欧美成人bangbros| 国产suv精品一区二区883| 五月综合激情网| 一区二区在线观看免费| 国产精品毛片大码女人| 国产精品网曝门| 国产精品污污网站在线观看| 国产精品网曝门| 一区二区三区国产精品| www亚洲一区| 中文文精品字幕一区二区| 久久综合九色综合欧美就去吻 | 亚洲欧美一区二区不卡| 中文字幕亚洲综合久久菠萝蜜| 中文字幕巨乱亚洲| 亚洲欧洲日韩一区二区三区| 亚洲高清视频的网址| 久久黄色级2电影| 91无套直看片红桃| 欧美日本在线一区| 日韩免费看网站| 国产精品视频看| 亚洲高清免费视频| 国产盗摄一区二区| 日韩一级黄色大片| 偷窥国产亚洲免费视频| 国产成人午夜视频| 欧洲一区二区三区在线| 欧美一区三区四区| 国产精品三级av| 国产精品丝袜久久久久久app| 久久中文字幕电影| 亚洲午夜在线观看视频在线| 久久99精品国产91久久来源| 欧洲色大大久久| 国产精品午夜免费| 国产成人免费xxxxxxxx| 日韩精品一区二区三区在线| 亚洲精品自拍动漫在线| 粉嫩久久99精品久久久久久夜| 日韩限制级电影在线观看| 午夜天堂影视香蕉久久| 色婷婷狠狠综合| 亚洲男人都懂的| 色婷婷国产精品久久包臀| 亚洲人吸女人奶水| 成人国产精品免费网站| 欧美白人最猛性xxxxx69交| 亚洲一区免费视频| 欧美性三三影院| 夜夜嗨av一区二区三区中文字幕 | 自拍偷拍欧美精品| www.亚洲精品| 亚洲美女精品一区| 久久av中文字幕片| 欧美高清hd18日本| 美女诱惑一区二区| 2欧美一区二区三区在线观看视频| 精品写真视频在线观看| www久久久久| 欧美日韩一区二区三区在线看| 亚洲国产精品一区二区久久| 欧美日韩国产高清一区二区三区 | 亚洲伊人伊色伊影伊综合网| 欧美日韩精品一区二区天天拍小说 | 久久机这里只有精品| 欧美成人精品3d动漫h| 韩国v欧美v日本v亚洲v| 日韩欧美激情在线| 成人午夜精品在线| 国产精品免费视频网站| 成人污污视频在线观看| 国产精品久久久久久久久免费桃花 | 一区二区不卡在线播放| 久久蜜臀精品av| 91黄视频在线| 激情综合网av| 一区二区三区四区精品在线视频| 日韩精品一区二区三区视频 | 免费在线成人网| 亚洲私人影院在线观看| 欧美亚洲丝袜传媒另类| 国产精品亚洲一区二区三区妖精| 日韩福利电影在线| 亚洲一区二区三区精品在线| 717成人午夜免费福利电影| 国产一区二区三区免费播放| 亚洲欧美电影院| 国产精品视频在线看| 中文字幕精品一区二区精品绿巨人| 3d动漫精品啪啪一区二区竹菊| 丁香激情综合国产| 日韩精品五月天| 欧美不卡一区二区| 欧美视频在线播放| 国产高清无密码一区二区三区| 亚洲成人久久影院| 中文字幕一区二区在线观看| 日韩一区二区在线播放| 欧美精品电影在线播放| 日本久久一区二区三区| 色婷婷激情久久| 欧美精品一二三| 精品国产免费一区二区三区香蕉| 欧美成va人片在线观看| 欧美tickling网站挠脚心| 日韩欧美亚洲国产另类| 久久久.com| 亚洲国产另类av| 看片的网站亚洲| 91在线播放网址| 欧美日韩高清影院| 欧美一级精品在线| 欧美国产成人在线| 性欧美大战久久久久久久久| 黄一区二区三区| 91福利精品第一导航| 精品国产制服丝袜高跟| 亚洲精品一区二区三区四区高清| 久久中文娱乐网| 午夜精品久久久久久久| 国产另类ts人妖一区二区| 色婷婷久久久综合中文字幕| 国产精品18久久久久久久久久久久 | 欧美剧在线免费观看网站 | 国产蜜臀97一区二区三区| 日韩av电影免费观看高清完整版 | 亚洲一区二区影院| 国产在线国偷精品免费看| 色视频一区二区| 制服丝袜亚洲网站| 综合中文字幕亚洲| 国产a级毛片一区| 欧美精品久久99久久在免费线| 久久中文字幕电影| 亚洲少妇30p| 99久久久国产精品| 欧美大片一区二区三区| 日韩国产高清在线| 欧美性猛片aaaaaaa做受| 亚洲欧美综合另类在线卡通| 国产精一区二区三区| 精品盗摄一区二区三区| 亚洲男女一区二区三区| 激情文学综合插| 精品国产成人在线影院| 午夜视频久久久久久| 色综合天天做天天爱|