yiqinnerry 发表于 2017-12-4 09:55:01

qt连接sqlite3数据库

需要用到sqlite3数据库,按照下方网址的方法添加了sqlite3.h,sqlite3.lib文件
http://blog.csdn.net/alspwx/article/details/12649225#reply

但是在调用的时候,比如:
iRetVal = sqlite3_open(sq3Path, &sq3);
sqlite3_exec(sq3, "begin;", 0, 0, &zErrMsg);
显示undefined reference to "sqlite3_open",undefined reference to "sqlite3_exec"


函数在sqlite3.h已经定义过的:
SQLITE_API int sqlite3_exec(
sqlite3*,                                  /* An open database */
const char *sql,                           /* SQL to be evaluated */
int (*callback)(void*,int,char**,char**),/* Callback function */
void *,                                    /* 1st argument to callback */
char **errmsg                              /* Error msg written here */
);

为什么还会一直报错呢

kenneth 发表于 2017-12-4 10:35:31

现在Qt中已经自带SQLite,不需要第三方库了

yiqinnerry 发表于 2017-12-4 11:23:04

kenneth 发表于 2017-12-4 10:35
现在Qt中已经自带SQLite,不需要第三方库了

如果使用第三方数据库的话,为什么会出现这个问题呢

kenneth 发表于 2017-12-4 16:50:25

本帖最后由 kenneth 于 2017-12-4 16:55 编辑

你包含头文件了吗? #include "sqlite3.h"
Qt 是不使用lib 这个文件的,只要在 pro 中增加 LIBS += -L$$OUT_PWD/xxxxx -lsqlite3
目录不能错

yiqinnerry 发表于 2017-12-5 08:21:14

kenneth 发表于 2017-12-4 16:50
你包含头文件了吗? #include "sqlite3.h"
Qt 是不使用lib 这个文件的,只要在 pro 中增加 LIBS += -L$$OUT ...

添加了也是提示同样的错误

kenneth 发表于 2017-12-5 09:05:06

你把编译的临时文件删掉,再重新编译试试,也有可能是你第三方库存放目录错了

Since 发表于 2017-12-5 09:27:41

库文件的路径添加问题吧,这个库没有被项目引入成功,所以无法正常使用库里面的函数!

yiqinnerry 发表于 2017-12-5 11:20:46

Since 发表于 2017-12-5 09:27
库文件的路径添加问题吧,这个库没有被项目引入成功,所以无法正常使用库里面的函数! ...

.pro 里面加的LIBS += -LE:/sqlite3/lib -lsqlite3
E:/sqlite3/lib是存放的sqlite3.lib文件,照理讲是没错的,但是去掉这行也是报相同的错误,好像这行没有起作用

yiqinnerry 发表于 2017-12-5 11:22:36

kenneth 发表于 2017-12-5 09:05
你把编译的临时文件删掉,再重新编译试试,也有可能是你第三方库存放目录错了 ...

都没错唉但是那行好像没有起作用,去掉也是报相同的错误

kenneth 发表于 2017-12-5 14:44:12

你是说 E:/sqlite3/lib是存放的sqlite3.lib文件 ????
这个路径应该是 sqlite3.dll的存放目录,而不是 sqlite3.lib 的

Since 发表于 2017-12-6 09:19:50

kenneth 发表于 2017-12-5 14:44
你是说 E:/sqlite3/lib是存放的sqlite3.lib文件 ????
这个路径应该是 sqlite3.dll的存放目录,而不是 s ...

对啊,windows 电脑添加的是 .DLL 文件,Android 手机 和 LINUX 下添加的是 .so 文件,lib 这个链接文件是伽干嘛的 ?

kingssss 发表于 2022-6-2 17:26:36

解决了吗?我也报出了这个错误
页: [1]
查看完整版本: qt连接sqlite3数据库