ASP.net操作Excel导入到SQL Server出错,求解答!!!

qq_35633825 2016-08-05 04:35:47
以下为粘出的源代码,数据连接没问题,提示导入不成功,请重试,就是最后那抛出的异常,不知道是不是因为列数太多的原因,列数较少时可以更新成功,全导进去就抛出异常,求大神指导!!


#region --------读取文件内容到服务器内存----------
string conn = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =" + Server.MapPath("file/") + filename + ";Extended Properties=Excel 8.0";
OleDbConnection thisconnection = new OleDbConnection(conn);
thisconnection.Open();
//要保证字段名和excel表中的字段名相同
string Sql = "select * from [Sheet1$]";
OleDbDataAdapter mycommand = new OleDbDataAdapter(Sql, thisconnection);
DataSet ds = new DataSet();
mycommand.Fill(ds, "[Sheet1$]");
thisconnection.Close();
#endregion
#region --------插入到数据库中---------
SqlConnection thisconnection1 = new SqlConnection("server=127.0.0.1;database=ZGXX;uid=sa;pwd=103505");
thisconnection1.Open();
int count1 = ds.Tables["[Sheet1$]"].Rows.Count;
for (int i = 0; i < count1; i++)
{
//string stuName = "", majorID = "", cardID = "";
//stuName = ds.Tables["[Sheet1$]"].Rows[i][0].ToString();
//majorID = ds.Tables["[Sheet1$]"].Rows[i][1].ToString();
//cardID = ds.Tables["[Sheet1$]"].Rows[i][2].ToString();
//string excelsql = "insert into Fee_stu(stuName,majorID,cardID) values ('" + stuName + "','" + majorID + "','" + cardID + "') ";
string cYGBH = "", cXM = "", cXMJM = "", cXingBie = "", cMinZu = "", dChuShengRQ = "", cJiGuan = "", cShenFenID = "", cJiaTingZZ = "", cLianXiDH = "", cWenHuaCD = "", nWenHuaCDID = "", cBiYeYX = "", dBiYeRQ = "", cZhuanYe = "", nXueZhi = "", dCanJiaGZRQ = "", cZhengZhiMM = "", dRuDangTRQ = "", cZhiWu = "", cXingZhengJB = "", nXingZhengJBID = "", cBuMen = "", dRenZhiRQ = "", cZhiCheng = "", dJinZhiRQ = "", cZhiChengJB = "", nZhiChengJBID = "", cGanBuSF = "", nDangAnGZ = "", cIsGuDong = "", nGuJin = "", cIsGanBu = "", cIsLinShiGong = "", cIsJingShang = "", cDengHao = "", cZiJiuQH = "", cIsHunGang = "", nJingXiaDG = "", cBZ = "", yijidanwei = "", gongzhong = "", gangwei = "", cSheHuiBZHM = "", gonghao = "", yinhang = "", zhanghao = "";
int j = 0;
cYGBH = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cXM = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cXMJM = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cXingBie = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cMinZu = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
dChuShengRQ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cJiGuan = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cShenFenID = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cJiaTingZZ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cLianXiDH = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cWenHuaCD = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nWenHuaCDID = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cBiYeYX = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
dBiYeRQ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cZhuanYe = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nXueZhi = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
dCanJiaGZRQ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cZhengZhiMM = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
dRuDangTRQ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cZhiWu = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cXingZhengJB = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nXingZhengJBID = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cBuMen = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
dRenZhiRQ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cZhiCheng = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
dJinZhiRQ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cZhiChengJB = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nZhiChengJBID = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cGanBuSF = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nDangAnGZ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cIsGuDong = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nGuJin = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cIsGanBu = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cIsLinShiGong = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cIsJingShang = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cDengHao = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cZiJiuQH = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cIsHunGang = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
nJingXiaDG = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cBZ = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
yijidanwei = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
gongzhong = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
gangwei = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
cSheHuiBZHM = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
gonghao = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
yinhang = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
zhanghao = ds.Tables["[Sheet1$]"].Rows[i][j++].ToString().Trim();
string excelsql = "insert into YGXXB(cYGBH,cXM,cXMJM,cXingBie,cMinZu,dChuShengRQ,cJiGuan,cShenFenID,cJiaTingZZ,cLianXiDH,cWenHuaCD,nWenHuaCDID,cBiYeYX,dBiYeRQ,cZhuanYe,nXueZhi,dCanJiaGZRQ,cZhengZhiMM,dRuDangTRQ,cZhiWu,cXingZhengJB,nXingZhengJBID,cBuMen,dRenZhiRQ,cZhiCheng,dJinZhiRQ,cZhiChengJB,nZhiChengJBID,cGanBuSF,nDangAnGZ,cIsGuDong,nGuJin,cIsGanBu,cIsLinShiGong,cIsJingShang,cDengHao,cZiJiuQH,cIsHunGang,nJingXiaDG,cBZ,yijidanwei,gongzhong,gangwei,cSheHuiBZHM,gonghao,yinhang,zhanghao) values ('" + cYGBH + "','" + cXM + "','" + cXMJM + "','" + cXingBie + "','" + cMinZu + "','" + dChuShengRQ + "','" + cJiGuan + "','" + cShenFenID + "','" + cJiaTingZZ + "','" + cLianXiDH + "','" + cWenHuaCD + "','" + nWenHuaCDID + "','" + cBiYeYX + "','" + dBiYeRQ + "','" + cZhuanYe + "','" + nXueZhi + "','" + dCanJiaGZRQ + "','" + cZhengZhiMM + "','" + dRuDangTRQ + "','" + cZhiWu + "','" + cXingZhengJB + "','" + nXingZhengJBID + "','" + cBuMen + "','" + dRenZhiRQ + "','" + cZhiCheng + "','" + dJinZhiRQ + "','" + cZhiChengJB + "','" + nZhiChengJBID + "','" + cGanBuSF + "','" + nDangAnGZ + "','" + cIsGuDong + "','" + nGuJin + "','" + cIsGanBu + "','" + cIsLinShiGong + "','" + cIsJingShang + "','" + cDengHao + "','" + cZiJiuQH + "','" + cIsHunGang + "','" + nJingXiaDG + "','" + cBZ + "','" + yijidanwei + "','" + gongzhong + "','" + gangwei + "','" + cSheHuiBZHM + "','" + gonghao + "','" + yinhang + "','" + zhanghao + "') ";
SqlCommand mycommand1 = new SqlCommand(excelsql, thisconnection1);
try
{
mycommand1.ExecuteNonQuery();
}
catch
{
Response.Write("<b>导入不成功,请重试!</b>");
return;
}
}
Response.Write("更新成功");
thisconnection1.Close();
#endregion
}
...全文
209 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_35633825 2016-08-07
  • 打赏
  • 举报
回复
引用 5 楼 apollokk 的回复:
在113行打个断点,看看出错时的数据是什么?
谢谢 我改好了 超长了
qq_35633825 2016-08-07
  • 打赏
  • 举报
回复
引用 7 楼 From_TaiWan 的回复:
这么多数据,我建议逐条导入 从excel读取一条,然后马上写入sql表;让两个连接(一个连接excel,一个sql)同时工作,虽然慢点,但能保证完成任务
谢谢 我改好了 有一条超长了
qq_35633825 2016-08-07
  • 打赏
  • 举报
回复
引用 6 楼 insus 的回复:
各个字段类型是否正确,长度是否足够存储数据。 当设计过小,数据被截除时,它直接提示与直接失败!!!
谢谢,发问题那天我就改完了,确实是有一条超长了
秋的红果实 2016-08-07
  • 打赏
  • 举报
回复
这么多数据,我建议逐条导入 从excel读取一条,然后马上写入sql表;让两个连接(一个连接excel,一个sql)同时工作,虽然慢点,但能保证完成任务
insus 2016-08-06
  • 打赏
  • 举报
回复
各个字段类型是否正确,长度是否足够存储数据。 当设计过小,数据被截除时,它直接提示与直接失败!!!
Hello World, 2016-08-06
  • 打赏
  • 举报
回复
在113行打个断点,看看出错时的数据是什么?
qq_35633825 2016-08-05
  • 打赏
  • 举报
回复
引用 2 楼 apollokk 的回复:
你catch获取错误消息看看是什么?
System.Data.SqlClient.SqlException: 将截断字符串或二进制数据。 语句已终止。 在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) 在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) 在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) 在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) 在 System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) 在 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) 在 System.Data.SqlClient.SqlCommand.ExecuteNonQuery() 在 LZ_import_man.btnUpload_Click(Object sender, EventArgs e) 位置 e:\煤矿\煤矿系统\ZGXXGL\LZ\import_man.aspx.cs:行号 113 这是抛出的异常
Hello World, 2016-08-05
  • 打赏
  • 举报
回复
你catch获取错误消息看看是什么?
qq_35633825 2016-08-05
  • 打赏
  • 举报
回复
小白求指导,SQL部分语句都没有问题,就是列数多的话就打印不出来
内容概要:本文档是一份针对初学者的Spring框架整合学习笔记,系统介绍了Spring Framework的核心基础与Spring MVC的开发应用。内容涵盖IOC(控制反转)的基本概念、配置方式与注解使用,详细讲解了bean的生命周期、作用域、依赖注入方式及自动装配机制;深入阐述AOP(面向切面编程)的XML与注解实现,包括切点、通知、织入等核心概念;全面演示Spring MVC的环境搭建、请求处理、参数绑定、视图解析、文件上传、RESTful风格支持、JSON返回、异常处理与拦截器开发;同时包含表单验证、国际化、与Struts2对比以及Spring IOC与MVC整合等实用知识点。; 适合人群:具备Java基础和基本Web开发经验,正在学习或刚进入企业级Java开发领域的初级程序员、应届毕业生及转行人员。; 使用场景及目标:①掌握Spring核心机制如IOC、AOP的原理与实际配置;②能够独立搭建Spring MVC项目并实现常见Web功能如参数接收、响应处理、文件上传、异常统一管理等;③理解Spring生态中各注解的作用与最佳实践,为后续学习Spring Boot和微服务打下坚实基础。; 阅读建议:此资源以理论结合实操为主,建议边阅读边动手搭建项目,重点理解配置背后的运行机制,尤其是bean生命周期、AOP织入过程和MVC请求流程,配合调试加深理解。
内容概要:本文围绕2026年高教社杯全国大学生数学建模竞赛A题“药材的烘干问题”提供完整的数学建模解决方案,涵盖问题分析、模型构建、算法实现与论文撰写等全套资源。文档不仅深入解析药材烘干过程中的传热传质机理,建立优化模型以提升干燥效率与品质,还系统整合了Matlab、Python等多种编程语言的代码实现方案,并附有高质量论文模板与写作指导。此外,资源包扩展覆盖无线电干扰源定位、微网电力调控、时频冲突消解、SEM广告投放策略等多个赛题,以及信号处理、电力系统优化、车间调度、路径规划、图像处理等多领域科研技术支持,配套提供大量仿真代码、算法模型与网盘资源链接,形成面向数学建模竞赛与科研实践的一站式学习与应用平台。; 适合人群:全国大学生数学建模竞赛参赛者,具备一定数学建模、编程基础的本科及研究生层次学生,以及从事智能优化、信号处理、电力系统、路径规划等相关领域的科研人员与工程技术人员。; 使用场景及目标:①辅助完成数学建模竞赛题目,特别是药材烘干过程的建模与优化求解;②学习多领域典型问题的建模方法与算法实现技巧,如优化算法、机器学习、控制仿真等;③获取标准化论文写作框架与优秀范例,提升科研表达能力与竞赛成绩。; 阅读建议:建议结合文档中提供的代码与论文范例进行实操复现,重点掌握建模逻辑、算法选型与结果分析方法;充分利用网盘资源拓展学习广度,针对自身研究方向深入钻研相关技术细节,全面提升综合实践与创新能力。
内容概要:本文系统阐述了基于矩方法的工程不确定度快速评估策略,重点突出其在迭代设计优化中的计算效率与稳定性优势,并配套提供了完整的Matlab代码实现。该方法通过提取输入变量的高阶矩信息,结合最大熵原理进行概率分布重建,从而实现对输出响应不确定性的高效传播分析,有效克服了传统蒙特卡洛方法计算成本高昂的弊端。研究深入对比了最大熵方法与Pearson分布系统在处理单峰及多峰分布尾部估计时的性能差异,验证了前者在扩展不确定度评估中的更高精度与更强鲁棒性,尤其适用于航空航天、高端装备等对可靠性要求严苛的复杂工程系统。; 适合人群:具备概率统计、随机过程及数值计算基础,从事工程设计、可靠性分析、不确定性量化或优化研究的科研人员、工程师及高年级研究生。; 使用场景及目标:①解决复杂工程系统中因材料、制造、载荷等多源不确定性引发的性能波动评估难题;②在迭代式设计优化流程中嵌入高效的不确定度传播模块,提升优化过程的稳定性与收敛性;③替代计算耗时的抽样方法(如蒙特卡洛),实现快速风险评估与可靠性分析;④应用于高维、非线性系统的尾部风险预测与安全边界划定。; 阅读建议:建议读者结合提供的Matlab代码,重点研读高阶矩计算、矩约束构建、熵最大化优化求解及概率密度函数重建等关键模块的实现细节,通过复现文中的对比实验,深入理解不同方法在尾部估计上的差异,并尝试将其应用于自身的工程案例中以掌握其适用边界与调参技巧。
代码下载链接: https://pan.quark.cn/s/a4b39357ea24 【JAVA 个人版电影院售票管理系统】是一项依托于NetBeans开发平台构建的应用项目,其目标在于模仿现实中的电影院售票过程,致力于提供高效且方便的票务管理解决方案。该系统全面包含了电影排期安排、座位预定管理以及购票支付处理等一连串功能,为使用者和管理者提供了直观易用的交互平台。 1. **Java编程语言**:该系统的核心构建工具是Java,它作为一种跨操作系统的面向对象编程语言,拥有丰富的类库资源和卓越的性能表现,非常适合用于开发此类桌面应用程序。 2. **NetBeans IDE**:NetBeans是一个开源性质的集成开发工具,能够支持Java、C++等多种编程语言的开发工作,提供了从代码编写、调试、测试到部署的全方位服务,有效简化了项目的构建与维护流程。 3. **MVC设计模式**:模型-视图-控制器(Model-View-Controller)的设计理念被广泛采纳于该系统中,实现了业务逻辑、数据操作和用户界面的分离处理,从而形成了条理清晰的代码架构,便于后续的维护和功能扩展。 4. **数据库管理**:系统可能运用了SQLite或MySQL这类关系型数据库来储存电影资讯、演出时间表、座位可用状态以及购票历史等数据,达成了数据的持久化保存和高效率查询的目标。 5. **用户界面**:系统需具备视觉吸引力且操作简便的用户界面,涵盖电影信息列表呈现、场次挑选、座位分布图示、订单确认及支付环节等,这些界面通常借助Java Swing或JavaFX库来实现视觉呈现。 6. **数据验证**:在用户输入信息阶段,系统将执行数据校验操作,保证输入的电影名称、演出场次、座位...

62,272

社区成员

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

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

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

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