vs2005下在MFC中操作sqlite数据库报错

wokao112358 2011-06-09 09:53:03

sqlite3* pDb = NULL;
//const char* pFilename = "airdrome.s3db";
char* pFilename = "airdrome.s3db";
int rc = sqlite3_open(pFilename, &pDb);
if (SQLITE_OK != rc || NULL == pDb)
{
AfxMessageBox(_T("初始化数据库失败!"));
sqlite3_close(pDb);
return ;
}

string strSql = "insert into userinfo (jobnum, username, userstat, adddate, modifydate, \
deldate, passwd) values ('admin', 'admin', 1, '20110609', '', '', '000000')";

char *errMsg;
rc = sqlite3_exec(pDb, strSql.c_str(), 0, 0, &errMsg);
if (SQLITE_OK != rc)
{
AfxMessageBox(_T("插入数据失败!"));
printf("mxx test %s", errMsg);
sqlite3_close(pDb);
return ;
}


弹出“插入数据失败!”的对话框;

errMsg单步跟踪时发现错误信息为“file is encrypted or is not a database”

请问这个怎么解决啊?airdrome.s3db文件我已经放到debug目录下
...全文
141 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wokao112358 2011-06-09
  • 打赏
  • 举报
回复

sqlite3* pDb = NULL;
//const char* pFilename = "airdrome.s3db";
char* pFilename = "airdrome.s3db";
int rc = sqlite3_open(pFilename, &pDb);
if (SQLITE_OK != rc || NULL == pDb)
{
AfxMessageBox(_T("初始化数据库失败!"));
sqlite3_close(pDb);
return ;
}

string strSql = "insert into userinfo (jobnum, username, userstat, adddate, modifydate, \
deldate, passwd) values ('admin', 'admin', 1, '20110609', '', '', '000000')";

char *errMsg;
rc = sqlite3_exec(pDb, strSql.c_str(), 0, 0, &errMsg);
if (SQLITE_OK != rc)
{
AfxMessageBox(_T("插入数据失败!"));
printf("mxx test %s", errMsg);
sqlite3_close(pDb);
return ;
}


errMsg单步跟踪时发现错误信息为“file is encrypted or is not a database”
wokao112358 2011-06-09
  • 打赏
  • 举报
回复
已经解决,具体参考文档如下连接
http://weakvip.blog.163.com/blog/static/33285115201092643337445/
wokao112358 2011-06-09
  • 打赏
  • 举报
回复
在VS2005中如何连接、使用SQLite数据库?
需要怎么配置?
如何操作数据库?

2,208

社区成员

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

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