首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

导入excel,报:定义了过多字段解决办法

2012-05-10 
导入excel,报:定义了过多字段C# codepublic DataSet ExcelToDs(string path){string strConn Provider

导入excel,报:定义了过多字段

C# code
  public DataSet ExcelToDs(string path)        {            string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " + path + ";Extended Properties ='Excel 8.0;HDR=NO;IMEX=1'";            OleDbConnection conn = new OleDbConnection(strConn);            conn.Open();            DataTable dtSchema = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });            DataSet ds = new DataSet();            //一个EXCEL文件可能有多个工作表,遍历之            foreach (DataRow dr in dtSchema.Rows)            {                string table = dr["TABLE_NAME"].ToString();                if (table == "'map copy$'")                {                    string tname = "map copy$";                    string strExcel = "SELECT * FROM [" + tname + "A1:IV100]";                    ds.Tables.Add(table);                    OleDbDataAdapter myCommand = new OleDbDataAdapter(strExcel, conn);                   [color=#FF0000] myCommand.Fill(ds, table);//定义了过多字段[/color]                }            }            conn.Close();            return ds;        }


怎么解决

[解决办法]
map copy$名字如果带空格,两边需要加单引号
[解决办法]
我也就只看出tname连接A1:IV100里有些问题要处理下
[解决办法]
确实无法在一个表中创建过多的Field。

热点排行