您的位置:程序门 -> .net技术 -> c#



下面异常是什么原因?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


下面异常是什么原因?[已结贴,结贴人:zxpcomeon]
发表于:2007-01-05 08:33:55 楼主
导出数据   出现异常   :system.invalidoperationexception:   conversion   failed   because   the   datetime   data   value   overflowed   the   type   specified   for   the   datetime   value   part   in   the   consumer 's   buffer.
      at   system.data.oledb.columnbinding.value()
      at   system.data.oledb.oledbdatareader.getvalues(object[]   values)
      at   system.data.providerbase.datareadercontainer.commonlanguagesubsetdatareader.getvalues(object[]   values)
      at   system.data.providerbase.schemamapping.loaddatarow()
      at   system.data.common.dataadapter.fillloaddatarow(schemamapping   mapping)
      at   system.data.common.dataadapter.fillfromreader(dataset   dataset,   datatable   datatable,   string   srctable,   datareadercontainer   datareader,   int32   startrecord,   int32   maxrecords,   datacolumn   parentchaptercolumn,   object   parentchaptervalue)
      at   system.data.common.dataadapter.fill(dataset   dataset,   string   srctable,   idatareader   datareader,   int32   startrecord,   int32   maxrecords)
      at   system.data.common.dbdataadapter.fillinternal(dataset   dataset,   datatable[]   datatables,   int32   startrecord,   int32   maxrecords,   string   srctable,   idbcommand   command,   commandbehavior   behavior)
      at   system.data.common.dbdataadapter.fill(dataset   dataset,   int32   startrecord,   int32   maxrecords,   string   srctable,   idbcommand   command,   commandbehavior   behavior)
      at   system.data.common.dbdataadapter.fill(dataset   dataset,   string   srctable)
      at   msafluxc_2.service_c.mytimer_elapsed(object   sender,   elapsedeventargs   e)
发表于:2007-01-05 08:39:011楼 得分:5
日期格式不对或超范围
发表于:2007-01-05 08:44:182楼 得分:5
日期格式转换失败!~
发表于:2007-01-05 08:45:093楼 得分:4
同上,只能看出这些,代码贴上来看看
发表于:2007-01-05 08:48:014楼 得分:11
极可能:
你在数据库里,日期列的值为空,页你绑定的时候用了convert.todatetime()

加个条件判断吧
发表于:2007-01-05 09:37:255楼 得分:0
查询fill的时候没有用到convert.todatetime(),会不会和客户端的日期、时间区域配置有关?
发表于:2007-01-05 09:53:356楼 得分:0
中文的提示如下:
msafluxc   导出数据   出现异常   :system.invalidoperationexception:   转换失败,因为   datetime   数据值溢出了为使用者缓冲区中   datetime   值部分指定的类型。
      在   system.data.oledb.columnbinding.value()
      在   system.data.oledb.oledbdatareader.getvalues(object[]   values)
      在   system.data.providerbase.datareadercontainer.commonlanguagesubsetdatareader.getvalues(object[]   values)
      在   system.data.providerbase.schemamapping.loaddatarow()
      在   system.data.common.dataadapter.fillloaddatarow(schemamapping   mapping)
      在   system.data.common.dataadapter.fillfromreader(dataset   dataset,   datatable   datatable,   string   srctable,   datareadercontainer   datareader,   int32   startrecord,   int32   maxrecords,   datacolumn   parentchaptercolumn,   object   parentchaptervalue)
      在   system.data.common.dataadapter.fill(dataset   dataset,   string   srctable,   idatareader   datareader,   int32   startrecord,   int32   maxrecords)
      在   system.data.common.dbdataadapter.fillinternal(dataset   dataset,   datatable[]   datatables,   int32   startrecord,   int32   maxrecords,   string   srctable,   idbcommand   command,   commandbehavior   behavior)
      在   system.data.common.dbdataadapter.fill(dataset   dataset,   int32   startrecord,   int32   maxrecords,   string   srctable,   idbcommand   command,   commandbehavior   behavior)
      在   system.data.common.dbdataadapter.fill(dataset   dataset,   string   srctable)
      在   msafluxc_2.service_c.mytimer_elapsed(object   sender,   elapsedeventargs   e)   位置   e:\zxp\myprogram\msaflux\src\msaflux_2.0\msafluxc\service_c.cs:行号   186
  table_log:select   *   from   dtyw_cbsbgt   where   mrut   > =   '2006-1-1   0:00:00 '   and   mrut   <     '2007-1-3   9:51:41 '   and   gxbz   <>   'd '
发表于:2007-01-05 10:03:077楼 得分:4
把   select   *   from   dtyw_cbsbgt   where   mrut   > =   '2006-1-1   0:00:00 '   and   mrut   <     '2007-1-3   9:51:41 '   and   gxbz   <>   'd '
在查询分析器里面执行一下看看.
发表于:2007-01-05 10:06:348楼 得分:11
.net里面datetime和数据库datetime,smalldatetime取值范围不一样,是用区别的。
查查具体值。
发表于:2007-01-05 10:46:459楼 得分:0
datetime的具体值是sybase数据库默认的1900-01-01

msafluxc   导出数据   出现异常   :system.invalidoperationexception:   the   provider   could   not   determine   the   datetime   value.   for   example,   the   row   was   just   created,   the   default   for   the   datetime   column   was   not   available,   and   the   consumer   had   not   yet   set   a   new   datetime   value.
      at   system.data.oledb.columnbinding.value()
      at   system.data.oledb.oledbdatareader.getvalues(object[]   values)
      at   system.data.providerbase.datareadercontainer.commonlanguagesubsetdatareader.getvalues(object[]   values)
      at   system.data.providerbase.schemamapping.loaddatarow()
      at   system.data.common.dataadapter.fillloaddatarow(schemamapping   mapping)
      at   system.data.common.dataadapter.fillfromreader(dataset   dataset,   datatable   datatable,   string   srctable,   datareadercontainer   datareader,   int32   startrecord,   int32   maxrecords,   datacolumn   parentchaptercolumn,   object   parentchaptervalue)
      at   system.data.common.dataadapter.fill(dataset   dataset,   string   srctable,   idatareader   datareader,   int32   startrecord,   int32   maxrecords)
      at   system.data.common.dbdataadapter.fillinternal(dataset   dataset,   datatable[]   datatables,   int32   startrecord,   int32   maxrecords,   string   srctable,   idbcommand   command,   commandbehavior   behavior)
      at   system.data.common.dbdataadapter.fill(dataset   dataset,   int32   startrecord,   int32   maxrecords,   string   srctable,   idbcommand   command,   commandbehavior   behavior)
      at   system.data.common.dbdataadapter.fill(dataset   dataset,   string   srctable)
      at   msafluxc_2.service_c.mytimer_elapsed(object   sender,   elapsedeventargs   e)
  table_log:select   *   from   dtyw_cbsbyt   where   mrut   > =   '2006-1-1   0:00:00 '   and   mrut   <     '2007-1-3   10:22:27 '   and   gxbz   <>   'd '
发表于:2007-01-05 11:07:3810楼 得分:0
查询分析器   在哪里找?
发表于:2007-01-11 13:52:5611楼 得分:0
改为ase   odbc驱动后问题解决,但是不知道什么原因,sybase   oledb驱动的bug?有高手吗?


快速检索

最新资讯
热门点击