使用C语言操作Sqlite数据库
发布时间:2020-12-13 00:02:57 所属栏目:百科 来源:网络整理
导读:原文地址: http://blog.chinaunix.net/uid-20680669-id-3124348.html 在工作中,我总是使用编译后sqlite3可执行程序,进行数据库的创建;其实我们操作sqlite数据库, 也可是使用源代码级别的形式去操作数据库。我在网上查找,对部分代码进行修改,添加上注
原文地址:
http://blog.chinaunix.net/uid-20680669-id-3124348.html
在工作中,我总是使用编译后sqlite3可执行程序,进行数据库的创建;其实我们操作sqlite数据库,
也可是使用源代码级别的形式去操作数据库。我在网上查找,对部分代码进行修改,添加上注释, 形式如下代码,其中包含对数据表的创建,添加数据,查询数据功能,代码如下:
编写好代码后,我们需要进行编译。 我使用的ubuntu10.04自带的gcc编译器gcc4.4.3进行编译。 如果你使用 $ gcc sqlitetest.c 进行编译时,会出现如下的错误: /tmp/ccyxvdme.o: In function `main': sqlitetest.c:(.text+0x31): undefined reference to `sqlite3_open' sqlitetest.c:(.text+0x48): undefined reference to `sqlite3_errmsg' sqlitetest.c:(.text+0xa5): undefined reference to `sqlite3_exec' sqlitetest.c:(.text+0xd6): undefined reference to `sqlite3_free' sqlitetest.c:(.text+0x102): undefined reference to `sqlite3_exec' sqlitetest.c:(.text+0x12e): undefined reference to `sqlite3_exec' sqlitetest.c:(.text+0x15a): undefined reference to `sqlite3_exec' sqlitetest.c:(.text+0x166): undefined reference to `sqlite3_close' collect2: ld returned 1 exit status 这是因为gcc找不到定义sqlite3_open等等的头文件,经过在网上查找资料, 找到了解决方法,使用如下的方法进行编译: $ gcc -o hello -L /usr/local/sqlite-autoconf-3070400/lib -I/usr/local/sqlite-autoconf-307040/include sqlitetest.c -lsqlite3 上面的编译主要意义时-L 代码你安装sqlite3类库所在的路径, -I代表安装sqlite3的头文件路径 而-l表示 可执行程序的名称 经过上面的编译,即可成功。 执行结果如下: ~$ ./hello 数据库连接成功! 插入数据成功 插入数据成功 查询数据库内容 userid = 张三 age = 20 birthday = 2011-7-23 userid = 李四 age = 20 birthday = 2012-9-20 数据库关闭成功! sqlitetest.rar (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |