CDatabase::ExecuteSQL的用法的问题!

huche 2004-11-15 08:35:52
CString strSQL = "insert into test.dbf('userid', 'username') values('1', '张三')";
CDatabase m_DB

m_DB.OpenEx("MyDSN", CDatabase::noOdbcDialog);
if (m_DB.IsOpen() && m_DB.CanUpdate())
m_DB.ExecuteSQL(strSQL);

为什么执行最后这条语句时会出现访问内存出错?如果是不能执行插入语句的话,但是检查数据库却数据已经插入进来了!我真是晕啊!
哪位高手帮我看看!数据库是DBF库。DSN指向DBF所在目录.
...全文
205 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
huche 2004-11-16
CString strSQL = "insert into test.dbf(userid, username) values('1', '张三')";

这条语句是我抄错了,不是语句的问题,他能写进库啊,但就是写进去了却内存出错了!

DBF库一个文件就是一个表,那个目录才是数据库。
回复
3ks 2004-11-16

CString strSQL = "insert into test.dbf('userid', 'username') values('1', '张三')";

插入数据只能是向“数据表”中插入,insert into后面应该写一个表的名字。你的test.dbf应该是个数据库的名字。
回复
gooyan 2004-11-15
字段名是不带''得
回复
huche 2004-11-15
to laiyiling(剑圣风暴·V2.0)

我跟踪了,是这行代码引起的。
回复
oyljerry 2004-11-15
检查指针是否关闭
回复
Kudeet 2004-11-15
访问内存出错是乎不是这里引起的吧!
回复
发动态
发帖子
数据库
创建于2007-09-28

3940

社区成员

VC/MFC 数据库
申请成为版主
社区公告
暂无公告