sqlite数据库 如何在VC6下选用sqlite3

sqlite 1
 

 

参考截图:

http://www.sqlite.org/download.html下载:

 

解压后拿走sqlite3.h,得到的任何文件那里不会用到
sqlite 2
下载第三个,解压后得到sqlite3.dll和sqlite3.def

  1. #include <iostream>  
  2. #include “sqlite3.h”  
  3. using namespace std;  
  4.   
  5. int sqlite3_exec_callback (void *data, int nColumn, char **colValues, char **colNames)  
  6. {  
  7.     for (int i = 0; i < nColumn; i++)  
  8.         printf (“%s\t”, colValues[i]);  
  9.     printf (“\n”);  
  10.     return 0;  
  11. }  
  12.   
  13. int main(int argc, char** argv)  
  14. {  
  15.     sqlite3 *conn = NULL;  
  16.     char *err_msg = NULL;  
  17.     char sql[200] = “”;  
  18.   
  19.     //打开数据库,创设连接  
  20.     if (sqlite3_open(“data.db”, &conn) != SQLITE_OK) puts (“无法开拓!”);  
  21.   
  22.       
  23.     //执行SQL,创建表VC6_test  
  24.     sprintf (sql, “CREATE TABLE VC6_test \  
  25.                 (id int, name varchar(20), age int)”);  
  26.           
  27.     if (sqlite3_exec (conn, sql, NULL, NULL, &err_msg) != SQLITE_OK)  
  28.     {  
  29.         printf (“操作失利,错误代码:%s\n”, err_msg);  
  30.         exit(-1);  
  31.     }  
  32.   
  33.     //添加10条记录  
  34.     for (int i = 0; i < 10; i++)  
  35.     {  
  36.         //执行SQL  
  37.         sprintf (sql, “INSERT INTO VC6_test \  
  38.                     (id, name, age) VALUES \  
  39.                     (%d, ‘%s’, %d)”, i, “testPeople”, i);  
  40.         if (sqlite3_exec (conn, sql, NULL, NULL, &err_msg) != SQLITE_OK)  
  41.         {  
  42.             printf (“操作战败,错误代码:%s\n”, err_msg);  
  43.             exit(-1);  
  44.         }  
  45.     }  
  46.       
  47.       
  48.     //查询  
  49.     sprintf (sql, “SELECT * FROM VC6_test”);  
  50.     sqlite3_exec (conn, sql, &sqlite3_exec_callback, 0, &err_msg);  
  51.   
  52.     //关闭连接  
  53.     if (sqlite3_close(conn) != SQLITE_OK)  
  54.     {  
  55.         printf (“无法关闭,错误代码:%s\n”, sqlite3_errmsg(conn));  
  56.         exit(-1);  
  57.     }  
  58.   
  59.     puts (“操作成功”);  
  60.     return 0;  
  61. }  

  运作结果:

④输入(cd \Microsoft Visual
Studio\VC98\Bin)然后回车切换来LIB.exe所在目录

sqlite 3

(固然提醒丢失mspd60.dll,请到\Microsoft Visual
Studio\Common\MSDev98\Bin目录找到mspd60.dll,然后再把它复制到\Microsoft
Visual Studio\VC98\Bin目录)

⑥用VC6新建一个空的控制台工程,把(sqlite3.h、sqlite3.dll、sqlite3.lib)放到工程文件夹里,

③输入(g:)然后回车切换来g盘目录(因为我VC装在g盘)

上边要做的是:利用sqlite3.def生成sqlite3.lib

 

sqlite 4
 

⑤输入指令(LIB /MACHINE:IX86
/DEF:sqlite3.def)然后回车,在一如既往目录下就会生成了sqlite3.lib文件了,当然还生成了sqlite3.exp,不过那里没用到

Cpp代码  sqlite 5

 

⑦在工程里新建一个cpp文件,运行以下代码:

①把sqlite3.def放到VC6的LIB.exe所在目录,例如我的VC是装在G盘的:G:\Microsoft
Visual Studio\VC98\Bin

②开首菜单->运行->cmd,打开cmd命令行

sqlite 6
 再也运行由于表已存在,不可能再创立,所以出错:

sqlite 7
 

接纳菜单栏的工程–>设置:在连年的(对象/库模块)后边加上sqlite3.lib,然后点确定

(以下括号里的绿色字体是输入的内容)

网站地图xml地图