haikechuang
haikechuang
2015-02-20 09:57
采纳率: 50%
浏览 4.2k

System.Data.OleDb.OleDbException: 不能更新。数据库或对象为只读。

小弟通过Oledb方法访问database,读取,删除、修改excel。
修改总是提示
数据库或对象为只读。
请问各位大侠如何更改数据库或对象属性?谢谢,求指教
String sConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=d:\2.xls ;Extended Properties='Excel 12.0;HDR=YES;IMEX=1' ";
//实例化一个Oledbconnection类(实现了IDisposable,要using)
using (OleDbConnection ole_conn = new OleDbConnection(sConnectionString))
{
ole_conn.Open();
using (OleDbCommand ole_cmd = ole_conn.CreateCommand())
{
ole_cmd.CommandText = "CREATE TABLE CustomerInfo ([CustomerID] VarChar,[Customer] VarChar)";
ole_cmd.ExecuteNonQuery();
ole_cmd.CommandText = "insert into CustomerInfo(CustomerID,Customer)values('DJ001','点击科技')";
ole_cmd.ExecuteNonQuery();

                } 
            }
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • devmiao
    devmiao 2015-02-20 11:44

    excel作为数据源是只读的,要修改需要用vba或者npoi

    点赞 评论
  • haikechuang
    haikechuang 2015-02-20 13:13

    你好大侠,再请教一下,C#中方便插入vba代码以便于修改excel吗

    点赞 评论
  • qq_34619111
    qq_34619111 2016-06-01 04:08

    我的也是出现了这个问题,请问你的解决了吗

    点赞 评论

相关推荐