青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

直接通過(guò)ODBC讀寫(xiě)Excel表格文件

下載本文示例代碼

想要通過(guò)ODBC直接讀、寫(xiě)Excel表格文件,首先,應(yīng)確保ODBC中已安裝有Excel表格文件的驅(qū)動(dòng)"MICROSOFT EXCEL DRIVER (*.XLS)"。然后,可根據(jù)下面步驟進(jìn)行:

1. 在StdAfx.h文件中加入:
#include <afxdb.h>

#include <odbcinst.h>

2. 通過(guò)ODBC直接創(chuàng)建Excel文件并在表中插入數(shù)據(jù)(暫定文件名:Demo.xls)
//創(chuàng)建并寫(xiě)入Excel文件

void CRWExcel::WriteToExcel()

{

  CDatabase database;

  CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)"; // Excel安裝驅(qū)動(dòng)

  CString sExcelFile = "c:\\demo.xls";                // 要建立的Excel文件

  CString sSql;

   

  TRY

  {

    // 創(chuàng)建進(jìn)行存取的字符串

    sSql.Format("DRIVER={%s};DSN='''';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",

                sDriver, sExcelFile, sExcelFile);

 

    // 創(chuàng)建數(shù)據(jù)庫(kù) (既Excel表格文件)

    if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )

    {

      // 創(chuàng)建表結(jié)構(gòu)(姓名、年齡)

      sSql = "CREATE TABLE demo (Name TEXT,Age NUMBER)";

      database.ExecuteSQL(sSql);

 

      // 插入數(shù)值

      sSql = "INSERT INTO demo (Name,Age) VALUES (''徐景周'',26)";

      database.ExecuteSQL(sSql);

 

      sSql = "INSERT INTO demo (Name,Age) VALUES (''徐志慧'',22)";

      database.ExecuteSQL(sSql);

 

      sSql = "INSERT INTO demo (Name,Age) VALUES (''郭徽'',27)";

      database.ExecuteSQL(sSql);

    }     

 

    // 關(guān)閉數(shù)據(jù)庫(kù)

    database.Close();

  }

  CATCH_ALL(e)

  {

    TRACE1("Excel驅(qū)動(dòng)沒(méi)有安裝: %s",sDriver);

  }

  END_CATCH_ALL;

}

3. 通過(guò)ODBC直接讀取Excel文件(暫定文件名:Demo.xls)
// 讀取Excel文件

void CRWExcel::ReadFromExcel()

{

    CDatabase database;

    CString sSql;

    CString sItem1, sItem2;

    CString sDriver;

    CString sDsn;

    CString sFile = "Demo.xls";    // 將被讀取的Excel文件名

                                    

    // 檢索是否安裝有Excel驅(qū)動(dòng) "Microsoft Excel Driver (*.xls)"

    sDriver = GetExcelDriver();

    if (sDriver.IsEmpty())

    {

        // 沒(méi)有發(fā)現(xiàn)Excel驅(qū)動(dòng)

        AfxMessageBox("沒(méi)有安裝Excel驅(qū)動(dòng)!");

        return;

    }

   

    // 創(chuàng)建進(jìn)行存取的字符串

    sDsn.Format("ODBC;DRIVER={%s};DSN='''';DBQ=%s", sDriver, sFile);

 

    TRY

    {

        // 打開(kāi)數(shù)據(jù)庫(kù)(既Excel文件)

        database.Open(NULL, false, false, sDsn);

       

        CRecordset recset(&database);

 

        // 設(shè)置讀取的查詢語(yǔ)句.

        sSql = "SELECT Name, Age "      

               "FROM demo "                

               "ORDER BY Name ";

   

        // 執(zhí)行查詢語(yǔ)句

        recset.Open(CRecordset::forwardOnly, sSql, CRecordset::readOnly);

 

        // 獲取查詢結(jié)果

        while (!recset.IsEOF())

        {

            //讀取Excel內(nèi)部數(shù)值

            recset.GetFieldValue("Name ", sItem1);

            recset.GetFieldValue("Age", sItem2);

 

            // 移到下一行

            recset.MoveNext();

        }

 

        // 關(guān)閉數(shù)據(jù)庫(kù)

        database.Close();

                            

    }

    CATCH(CDBException, e)

    {

        // 數(shù)據(jù)庫(kù)操作產(chǎn)生異常時(shí)...

        AfxMessageBox("數(shù)據(jù)庫(kù)錯(cuò)誤: " + e->m_strError);

    }

    END_CATCH;

}

4. 獲取ODBC中Excel驅(qū)動(dòng)的函數(shù)
CString CRWExcel::GetExcelDriver()

{

    char szBuf[2001];

    WORD cbBufMax = 2000;

    WORD cbBufOut;

    char *pszBuf = szBuf;

    CString sDriver;

 

    // 獲取已安裝驅(qū)動(dòng)的名稱(涵數(shù)在odbcinst.h里)

    if (!SQLGetInstalledDrivers(szBuf, cbBufMax, &cbBufOut))

        return "";

   

    // 檢索已安裝的驅(qū)動(dòng)是否有Excel...

    do

    {

        if (strstr(pszBuf, "Excel") != 0)

        {

            //發(fā)現(xiàn) !

            sDriver = CString(pszBuf);

            break;

        }

        pszBuf = strchr(pszBuf, ''\0'') + 1;

    }

    while (pszBuf[1] != ''\0'');

 

    return sDriver;

}

作者信息:
姓名:徐景周(未來(lái)工作室 Future Studio)
EMAIL:jingzhou_xu@163.net

本文來(lái)自: 乘風(fēng)原創(chuàng)程序(http://www.qqcf.com) 詳細(xì)出處參考:http://study.qqcf.com/web/197/22219.htm

posted on 2009-05-21 21:25 wrh 閱讀(893) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


導(dǎo)航

<2008年4月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

統(tǒng)計(jì)

常用鏈接

留言簿(19)

隨筆檔案

文章檔案

收藏夾

搜索

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产欧美一级| 国产精品成人一区二区艾草| 免费成人在线观看视频| 国产麻豆视频精品| 中文精品99久久国产香蕉| 免费中文字幕日韩欧美| 性娇小13――14欧美| 国产精品美女久久久久av超清| 亚洲人成网站999久久久综合| 久久久精品国产免大香伊| 一区二区三区高清在线| 欧美日韩国产高清| 久久久国际精品| 一区二区三区四区国产精品| 久久精品日韩欧美| 狠狠干成人综合网| 久久亚洲国产成人| 久久精品国产视频| 国产有码一区二区| 蜜桃av一区二区三区| 美女免费视频一区| 亚洲精品1区2区| 麻豆亚洲精品| 欧美成人综合在线| 一区二区激情| 亚洲一区中文| 国产自产在线视频一区| 久久亚洲一区二区| 久久天天躁狠狠躁夜夜av| 在线日韩一区二区| 亚洲精品综合在线| 99精品欧美一区二区三区综合在线| 亚洲激情视频在线| 麻豆视频一区二区| 亚洲最黄网站| 亚洲午夜激情网页| 欧美成人按摩| 欧美日韩成人一区| 美女被久久久| 亚洲无玛一区| 久久婷婷影院| 亚洲午夜精品久久久久久浪潮| 欧美一区二区视频在线观看2020| 夜夜爽夜夜爽精品视频| 久久久99精品免费观看不卡| 亚洲一区成人| 国产欧美 在线欧美| 亚洲激情视频网站| 欧美日韩免费视频| 国产精品美女www爽爽爽视频| 午夜在线成人av| 99热这里只有成人精品国产| 亚洲欧美一区二区精品久久久| 亚洲免费电影在线| 欧美电影免费观看高清完整版| 老司机午夜精品视频| 国产又爽又黄的激情精品视频| 欧美在线|欧美| 一区二区久久久久| 亚洲精品美女在线| 国产亚洲欧美另类中文| 亚洲高清av在线| 国产欧美日韩一区二区三区在线观看| 欧美成年视频| 国产精品免费视频xxxx| 欧美黄污视频| 国产亚洲人成a一在线v站| 欧美黄色成人网| 国产精品综合| 99re热这里只有精品免费视频| 在线观看91精品国产入口| 一本久久综合亚洲鲁鲁五月天| 亚洲第一区色| 久久精品视频在线看| 亚洲欧美日韩在线播放| 欧美日韩成人在线播放| 免费中文字幕日韩欧美| 国产亚洲欧洲一区高清在线观看| 99精品视频一区| 99热这里只有成人精品国产| 久久综合色8888| 快播亚洲色图| 国产在线麻豆精品观看| 亚洲综合视频网| 亚洲综合999| 国产精品www.| 制服丝袜激情欧洲亚洲| 亚洲精品日本| 免费观看欧美在线视频的网站| 久久综合九色综合久99| 国语精品一区| 久久视频免费观看| 久久综合五月| 黄色一区二区在线| 久久久久久久综合狠狠综合| 久久婷婷国产麻豆91天堂| 国内揄拍国内精品久久| 久久国产主播| 欧美成人免费小视频| 亚洲国产99精品国自产| 你懂的视频欧美| 91久久国产综合久久| 99亚洲伊人久久精品影院红桃| 欧美精品啪啪| 夜夜嗨av一区二区三区四季av| 亚洲永久免费av| 国产日韩一区在线| 久久久久久久久久久久久女国产乱 | 欧美视频在线播放| 欧美成人69av| 亚洲日韩欧美视频一区| 欧美91大片| 亚洲精品国精品久久99热| 亚洲免费精品| 日韩亚洲不卡在线| 亚洲国产精品小视频| 西西裸体人体做爰大胆久久久| 99国产精品99久久久久久| 久久精品国产亚洲精品| 亚洲欧美在线一区| 欧美日韩国产精品| 欧美电影免费网站| 国产日韩欧美在线观看| 一区二区三区高清视频在线观看| 最新亚洲激情| 免费在线视频一区| 噜噜噜久久亚洲精品国产品小说| 国产精品一二三| 99国产精品久久久久久久成人热 | 99re视频这里只有精品| 亚洲人成小说网站色在线 | 国产日本欧美在线观看| av成人免费在线观看| 日韩视频永久免费观看| 久久综合中文| 欧美电影在线| 亚洲日韩视频| 欧美激情91| 亚洲国产三级| 日韩西西人体444www| 欧美精品一区在线观看| 亚洲国产欧美另类丝袜| 亚洲精选中文字幕| 欧美黄色片免费观看| 亚洲人成小说网站色在线| 日韩午夜在线| 欧美午夜激情视频| 亚洲视频在线观看| 欧美在线日韩| 一区二区在线观看视频| 麻豆精品视频在线| 亚洲精品久久| 午夜精品久久久久久99热软件| 国产精品一级久久久| 久久精品99久久香蕉国产色戒| 免费永久网站黄欧美| 亚洲欧洲综合另类在线| 欧美日韩国产天堂| 欧美亚洲在线播放| 欧美激情一区二区三区在线| 日韩视频一区二区在线观看| 欧美性片在线观看| 久久国产精品久久精品国产| 欧美不卡三区| 亚洲一区在线免费观看| 国产色爱av资源综合区| 麻豆av一区二区三区久久| 99re热精品| 蜜桃久久av一区| 亚洲一区二区三区在线看| 亚洲肉体裸体xxxx137| 欧美日韩国产一中文字不卡 | 久久国产精品高清| 亚洲国产欧美日韩| 国产精品久久久亚洲一区| 久久精品噜噜噜成人av农村| 亚洲精品欧洲精品| 久久久久久久一区| 一区二区三区黄色| 精品成人在线视频| 欧美久久一级| 久久精品国产亚洲5555| 一本色道久久综合亚洲精品不| 久久精品主播| 亚洲午夜精品一区二区| 激情婷婷欧美| 国产精品久久久久影院亚瑟| 蜜臀久久99精品久久久画质超高清| 宅男噜噜噜66一区二区| 亚洲第一搞黄网站| 久久久久国产精品一区| 亚洲视频你懂的| **欧美日韩vr在线| 国产一区二区三区免费在线观看| 欧美日韩中文在线| 欧美bbbxxxxx| 久久夜色撩人精品| 欧美在线视频观看| 午夜精品久久久久影视| 99这里有精品|