程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 一個完善的ODBC數據庫程序

一個完善的ODBC數據庫程序

編輯:關於C語言

 


大家知道用VC開發數據庫程序,一般有兩種選擇:ODBC或ADO。ODBC出現的較早,用的人也多。ADO是微軟正大力支持和發展的技術,致力於學習VC的程序員應該現在就學習這種技術。
在這個例字中我還是采用了自己更為熟悉的ODBC。程序的實現有兩個關鍵地方:一、ODBC兩個類的運用。二、LISTCONTROL控件的使用。程序的視圖用CRecordView類,具體配置可以參考源程序。程序的實現主要在視圖文件中完成,實現的功能有:增加記錄、刪除記錄、修改記錄、排序記錄、查尋記錄,並且在控件表格中直觀的顯示。本程序采用的是AECESS數據庫,當然也可采用ORACLE等其它數據庫。整個程序的界面簡潔、直觀(見下圖)。


下面介紹具體步驟:
首先根據數據庫的內容確定表格的樣式,這裡如下設計:
1.在視圖頭文件中給List Control控件加入Contrl 變量 m_ListCtrl。在實現文件的OnInitialUpdate()函數中加入如下語句:

//設表格表題和列的寬度
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_ListCtrl.InsertColumn(0,_T("學號"),LVCFMT_IMAGE|LVCFMT_LEFT);
         m_ListCtrl.InsertColumn(1,_T("姓名"));
         m_ListCtrl.InsertColumn(2,_T("數學"));
         m_ListCtrl.InsertColumn(3,_T("英語"));
int j;
 for(j=0;j<4;j++)
         {
           m_ListCtrl.SetColumnWidth(j ,90);
         }

這樣列表題就設置好,同時設置列的寬度。還要特別注意的一點,要在List Control控件的屬性頁Styles中設report屬性。因為程序一運行時,要求所有記錄都顯示出來所以接著增加了一個Show()函數,為了它的重用性,我對它進行了封裝。在後面的程序中大家可以看到它的好處。Show()函數如下:

int  CLhwyView::Show()
{
         int i=0;
         m_pSet->MoveFirst();
   do
          {  
                 CString s;
        s.Format("%d",m_pSet->m_column1);
        m_ListCtrl.InsertItem(i,s,0);
                   m_ListCtrl.SetItemText(i,1,m_pSet->m_column2);
        s.Format("%d",m_pSet->m_column3);
               m_ListCtrl.SetItemText(i,2,s);
        s.Format("%d",m_pSet->m_column4);
        m_ListCtrl.SetItemText(i,3,s);
                 i++;
        m_pSet->MoveNext();
                 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved