excel oledb mysql_OLEDB操作Excel
使用OLEDB操作Excel 的方法
OleDbConnection conn = null;
try
{
//fileName 表示要操縱的Excel的文件路徑,如果excel不存在,現創建它,可以通過模版文件復制創建。
string strConn;
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + fileName + ";" +
"Extended Properties='Excel 8.0;HDR=no;IMEX=0'";
conn = new OleDbConnection(strConn);
conn.Open();
System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand();
cmd.Connection = conn;
//在Excel的Sheet1的A3到H3處插入數據
cmd.CommandText = "insert into [Sheet1$A3:H3] (F1,F2,F3,F4,F5,F6,F7,F8) values('" + a200.Date + "','"
+ a200.PreviousClosePrice + "','" + a200.OpenPrice + "','" + a200.High + "','" + a200.Low + "','" + a200.Close + "','" +
a200.Change + "','" + a200.ChangeRate + "')";
cmd.ExecuteNonQuery();
conn.Close();
}
catch (Exception e)
{
if (conn != null)
conn.Close();
Console.WriteLine(e.ToString());
}
注:
1)使用 Excel 工作簿時,默認情況下,區域中的第一行是標題行(或字段名稱)。如果第一個區域不包含標題,您可以在連接字符串的擴展屬性中指定 HDR=NO。
如果您在連接字符串中指定 HDR=NO,Jet OLE DB 提供程序將自動為您命名字段(F1 表示第一個字段,F2 表示第二個字段,依此類推);
2)IMEX=1將所有讀入數據
看作字符,其他值(0、2)請查閱相關幫助文檔;3)如果出現“找不到可安裝的isam”錯誤,一般是連接字符串錯誤。
3、從excel文件讀取數據
string sql = "select * from [sheet1$]";
DoOleSql(sql,"test.xls");
4、更新excel文件中的數據
string sql = "update [sheet1$] set FieldName1='333' where FieldName2='b3'";
DoOleSql(sql,"test.xls");
5、向excel文件插入數據
string sql = "insert into [sheet1$](FieldName1,FieldName2,…) values('a',’b’,…)";
DoOleSql(sql,"test.xls");
6、刪除excel文件中的數據:不提倡使用這種方法
7、對于非標準結構的excel表格,可以指定excel中sheet的范圍
1)讀取數據:string sql = "select * from [sheet1$A3:F20]";
2)更新數據:string sql = "update [sheet1$A9:F15] set FieldName='333' where AnotherFieldName='b3'";
3)插入數據:string sql = "insert into [sheet1$A9:F15](FieldName1,FieldName2,…) values('a',’b’,…)";
4)刪除數據:不提倡
注:1)代碼根據需要可以自行修改;2)如果出現“操作必須使用一個可更新的查詢”錯誤,可能sql語句中對excel文件中的“字段”引用有錯誤,或對excel文件不
具有“修改”權限;3)如果出現“不能擴充選定范圍”錯誤,可能是對excel文件引用的“范圍”有錯誤。
總結
以上是生活随笔為你收集整理的excel oledb mysql_OLEDB操作Excel的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 颐和园订的中午的票,下午可以进去吗
- 下一篇: 摩尔庄园礼服鱼怎么获得