日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Asp.net/c# OleDb操作excel文件

 whli88 2007-11-12
Asp.net/c#+OleDb操作excel文件 [ BugEyes 發(fā)表于 2007-10-13 15:58:00 ]
1

1、環(huán)境配置:加入using System.OleDb

2、編寫連接與操作excel文件的通用函數(shù)

protected void DoOleSql(string sql, string database)

    {       

        OleDbConnection conn = new OleDbConnection();

        conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("\\") + database + "; Extended Properties='Excel 8.0;HDR=no;IMEX=0'";

        try

        {//打開連接

            conn.Open();

        }

        catch (Exception e)

        {

            Response.Write(e.ToString());

        }

        OleDbCommand  olecommand = new OleDbCommand(sql, conn);       

        try

        {//執(zhí)行語句

            olecommand.ExecuteNonQuery();

        }

        catch (Exception eee)

        {

            Response.Write(eee.ToString());

            conn.Close();

        }

        finally

        {

            conn.Close();//關(guān)閉數(shù)據(jù)庫

        }

        conn.Close();

}

注:1)使用 Excel 工作簿時,默認情況下,區(qū)域中的第一行是標題行(或字段名稱)。如果第一個區(qū)域不包含標題,您可以在連接字符串的擴展屬性中指定 HDR=NO。如果您在連接字符串中指定 HDR=NO,Jet OLE DB 提供程序?qū)⒆詣訛槟侄危?span lang=EN-US style="FONT-SIZE: 12pt">F1 表示第一個字段,F2 表示第二個字段,依此類推);2IMEX=1將所有讀入數(shù)據(jù)看作字符,其他值(02)請查閱相關(guān)幫助文檔;3)如果出現(xiàn)“找不到可安裝的isam”錯誤,一般是連接字符串錯誤

3、從excel文件讀取數(shù)據(jù)

string sql = "select * from [sheet1$]";

DoOleSql(sql,"test.xls");

4、更新excel文件中的數(shù)據(jù)

string sql = "update [sheet1$] set FieldName1='333' where FieldName2='b3'";

DoOleSql(sql,"test.xls");

5、向excel文件插入數(shù)據(jù)

string sql = "insert into [sheet1$](FieldName1,FieldName2,) values('a',b,)";

DoOleSql(sql,"test.xls");

6、刪除excel文件中的數(shù)據(jù):不提倡使用這種方法

7、對于非標準結(jié)構(gòu)的excel表格,可以指定excelsheet的范圍

1)讀取數(shù)據(jù):string sql = "select * from [sheet1$A3:F20]";

2)更新數(shù)據(jù):string sql = "update [sheet1$A9:F15] set FieldName='333' where AnotherFieldName='b3'";

3)插入數(shù)據(jù):string sql = "insert into [sheet1$A9:F15](FieldName1,FieldName2,) values('a',b,)";

4)刪除數(shù)據(jù):不提倡

注:1)代碼根據(jù)需要可以自行修改;2)如果出現(xiàn)“操作必須使用一個可更新的查詢”錯誤,可能sql語句中對excel文件中的“字段”引用有錯誤,或?qū)xcel文件不具有“修改”權(quán)限;3)如果出現(xiàn)“不能擴充選定范圍”錯誤,可能是對excel文件引用的“范圍”有錯誤。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多