读取excel表数据后,将数据插入到sqlserver数据库的表中出问题

fxsy6669 2010-04-20 05:16:48
(一)读取excel表的方法是:
public DataTable GetExcelData(string xlsFile)
{
DataSet ds = new DataSet();
try
{
string xlscnn = "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=\"Excel 8.0;HDR=Yes;\";Data Source='";
string strConnection = xlscnn + xlsFile + "'";
string sqlstr = "SELECT * FROM [sheet1$] where [1] is not null";
System.Data.OleDb.OleDbDataAdapter da = new System.Data.OleDb.OleDbDataAdapter(sqlstr, strConnection);
da.Fill(ds); (运行到这一步的时候报‘定义了过多字段’)
da.Dispose();

}
catch (Exception ex)
{
Console.Write(ex.Message);
}
return ds.Tables[0];
}

我导入的excel表如下:
品牌 名称 记者 报道时间 版位名称 文章标题 报道字数 比例 文章基调 区域 媒体类型 信息来源 媒体1 长 宽 价值
品牌1 aa a 20100409 A 标题1 1000 1 中性 华北 网络 来源 媒体1 2 5 5000

这个问题该怎么解决呢?急急。。。。
...全文
159 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2010-04-20
  • 打赏
  • 举报
回复
检查文件
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
using(OleDbConnection conn = new OleDbConnection(strConn))
{
conn.Open();
DataSet ds = new DataSet();
string strExcel = "select * from [sheet1$]";
OleDbDataAdapter ds= new OleDbDataAdapter(strExcel, conn);
da.Fill(ds);
conn.Close();
}
mengxj85 2010-04-20
  • 打赏
  • 举报
回复
有可能是楼主给EXCEL表加样式了,默认的列数超过256,把你的内容复制到另外一个excel再试验一下
shuoshangdeshazi 2010-04-20
  • 打赏
  • 举报
回复
你不可以直接把建好的表导入吗?不用写代码不是也可以导入吗??哪个简单用哪个呀,导入应该很简单呀,

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧