OLEDB中的数据类型跟SQL中的要一一对应起来,使用COleDateTime等类型就可以了。

解决方案 »

  1.   

    但是msdn上介绍的不是DBTIMESTAMP吗?比如我用的是
    struct InsertARecord
    {
    char c2_2[5];
    char c4_3[50];
    DBTIMESTAMP c6_5;
    };
    另外,datetime类型在sqlserver里是8字节长,但是使用IColumnsInfo接口的GetColumnInfo方法,可以发现这个字段是16字节长,这是怎么回事?还有各位有没有操纵这种字段的代码?谢谢。
      

  2.   

    正如楼上所说,可能是有些字段不允许手工添加(必须让server自己作)
    比如,自动识别(就是自动增长数值的那个)的类型.
      

  3.   

    DBTIMESTAMP字段是自动添加的,所以才...向你说的那样.com接口的参数当然是16位,没什么稀奇的!
      

  4.   

    不是的,是自己手工添的,起码我在enterprise manager下自己添过。
    而且这就是个日期类型,和com无关。
      

  5.   

    还是像楼上说的,用COleDateTime试试吧!
    我还没做到那里。我刚解决了个开头的小(大?)问题!
      

  6.   

    coledatetime不管用,错误原因一样的。我准备绕过去了。