使用ODBC连接SQL Server,如何添加第一条记录?

kezhu 2003-10-10 09:15:51
使用ODBC连接SQL Server,为对应的表建立CRecord类,然后使用.open()、.add()、.update()、.close()的方式添加记录,但如果数据表为空,也就是添加第一条记录时,程序会报错,但记录可以添加上,往后就不出错了,这是为什么?

在数据库里直接添加第一条记录或使用Insert into添加都不出错。
...全文
52 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
stonexl 2003-10-10
  • 打赏
  • 举报
回复
这是因为你的表中有DateTime类型的字段。
在你影射的CRecord类中,系统将该字段影射为CTime的变量,你将影射的变量改为COleDateTime类型的就可以了。
kezhu 2003-10-10
  • 打赏
  • 举报
回复
谢谢大家,按照stonexl(老鬼)的方法试了一下,可以添加,另外一个朋友告诉我在类的构造函数里为每一个字段变量赋初值,包括datetime型的m_字段名 = CTime(NULL);也可以。

这到底是什么原因?BUG吗?
stonexl 2003-10-10
  • 打赏
  • 举报
回复
diwaa(地娃)和楼主是同一个人吗?
stonexl 2003-10-10
  • 打赏
  • 举报
回复
这么奇怪?那你看看影射的CRecordSet类中是否为每一个变量都赋了初值。
Kingore 2003-10-10
  • 打赏
  • 举报
回复
有代码吗?
现在不好说。
可以把代码发过来,(带数据库)。帮忙调试一下。
zhonghui-panda@sohu.com
diwaa 2003-10-10
  • 打赏
  • 举报
回复
楼上大哥,
没有datetime 类型的字段也出现这种情况。

why???

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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