作者applerev (水军)
看板Visual_Basic
标题[.NET] 忽略executeNonQuery型态转换错误
时间Tue Jul 10 14:18:26 2012
各位好
我的作业环境是VS2010 Ultimate + Framework 4.0
这支程式的目的是要将Access档案中一个名为SalesCalc的Query所得到的结果
输出到Excel中新增的名为output的工作表
以下是程式内容:
Dim dbConn as New OledbConnection
("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=xxx.mdb)
Dim dbCmd as New OledbCommand
("select into [EXCEL 8.0;Database=xxx.xls].[output] from SalesCalc")
dbCmd.ExecuteNonQuery()
直接在access中跑这段query会出现像下面的讯息
在将1个栏位的资料转换为null时发生失败
型态转换错误发生的原因可能是在输出资料表时有一到多个栏位的资料未符合资料型别
或栏位长度的属性。例如在yes/no栏位中留空或是在型态为数字的栏位中输入了一段文
字时就会造成这样的错误。
您是否无论如何要忽略这些错误并继续更新或附加此项查询?
如果您要忽略这些错误请按下"是"
(我的作业环境都是英文版的 逐句翻译就大概这个样子)
按下是之後依然可以做输出的动作
但如果在vs的debug模式下执行会提示oledbException
例外讯息为division by zero
(资料表中有些留空的资料是无法避免的, 所以一定会遇到这个问题)
所以请问是否有参数或方法可以让它遇到像这个问题时可以无视转换错误强制执行呢?
先谢谢指教罗
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.128.60.124
1F:推 DearKurt:建议用vs2010去产生相对应的Dataset 写程式会比较简单 07/14 17:34