VC6.0使用Sqlite3 历程

参考网文:http://hi.baidu.com/lanmolei814/item/c08c82cb11ff612fa1b50a23

1.前往sqlite官网,下载到sqlitedll-3_3_7.zip,以及sqlite-source-3_3_7.zip

2.按照说明,把sqlitedll-3_3_7.zip解压得到dll和def文件

3.把def文件放在了vc安装目录(D:\Program Files\Microsoft Visual Studio\VC98\Bin)下,准备编译生成lib文件

4.报错,我的ghost win8,不知道为什么会这样,报错信息如下

---------------------------
LINK.EXE - 系统错误
---------------------------
无法启动此程序,因为计算机中丢失 mspdb60.dll。尝试重新安装该程序以解决此问题。
---------------------------
确定  
---------------------------

  百度了下,找到这个dll放了进去,重新试了一下,输入:LIB /MACHINE:IX86 /DEF:sqlite3.def

  OK,成功了,生成两个文件sqlite3.exp和sqlite3.lib,需要的文件到手了,准备下一步工作

5.创建一个简单控制台程序把"sqlite3.h"引入Source Files,再把dll和lib文件放入工程目录下

  #include "sqlite3.h" 

  #pragma comment(lib,"sqlite3.lib")

  编译运行后无错,进行下一步
6.建表

   char *zErrMsg = 0;
     char *sql = "CREATE TABLE SensorData( ID INTEGER PRIMARY KEY,SensorID INTEGER,SiteNum INTEGER,Time VARCHAR(12),SensorParameter REAL);";
  printf("%s\n",sql);
  nRet = sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
  if ( 0 != nRet )  
     {   
         printf("Create table falure, MSG:%s\n", zErrMsg);
     }else   
     {
         printf( "Create table success\n" );
     }

7.插入数据

  sql = "INSERT INTO \"SensorData\" VALUES(NULL , 1 , 1 , '200605011206', 18.9 );" ;
     nRet = sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
     if ( 0 != nRet )  
     {   
         printf("Insert Error:%s", zErrMsg);
     }else   
     {   
         printf("Insert OK\n");
     }

8.更新数据

   sql = "UPDATE SensorData SET SensorParameter=1000.01,SensorID=123 WHERE SensorParameter=100.01";
     nRet = sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
     if ( 0 != nRet )  
     {   
         printf("Update Error:%s", zErrMsg);
     }else   
     {   
         printf("Update OK\n");
     }

9.删除数据

  sql = "DELETE FROM SensorData WHERE SensorID=123";
     nRet = sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
     if ( 0 != nRet )  
     {   
         printf("Delete Error:%s", zErrMsg);
     }else
     {
         printf("Delete OK\n");
     }

10.查询数据

  int nrow = 0, ncolumn = 0;
     char **azResult; //二维数组存放結果
     sql = "SELECT * FROM SensorData ";
     sqlite3_get_table( db , sql , &azResult , &nrow , &ncolumn , &zErrMsg );
     int i = 0 ;
     printf( "row:%d column=%d \n" , nrow , ncolumn );
     printf( "\nThe result of querying is : \n" );
     for( i=0 ; i<( nrow + 1 ) * ncolumn ; i++ )
         printf( "azResult[%d] = %s\n", i , azResult[i] );
     //释放azResult 的內存空間
     sqlite3_free_table( azResult );

11.最后再关闭数据库

  sqlite3_close(db);

 

例子很简单,但是对数据库的增删改查基本操作都有了。收益很大,实践完后写个简单的数据库操作的程序应该是没什么问题了

找到的另一个简单案例:http://www.cnblogs.com/braver/articles/2621182.html

自己新建了一个QQ群:77499558 有学习c++,mfc的同志欢迎加入,自己找不到组织就自发组织。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLite3是一个轻量级的嵌入式数据库引擎,非常适合应用程序中存储和管理数据。而vc demo则是指在使用Visual C++编程语言开发应用程序时,使用SQLite3数据库的示例程序。 在SQLite3 VC Demo中,我们可以学习到如何在Visual C++中集成SQLite3,创建数据库、表,以及执行SQL查询和操作等基本操作。具体而言,SQLite3 VC Demo可以帮助我们理解以下几个方面: 1. 数据库连接与关闭:在应用程序启动时,我们可以使用SQLite3接口函数创建和连接到SQLite3数据库。而在应用程序结束时,也需要使用相应的函数来关闭数据库连接,以确保数据的安全访问和保存。 2. 数据库的建立和维护:在SQLite3 VC Demo中,我们可以学习到如何使用SQLite3语法创建数据库和数据表。通过执行SQL语句,可以定义表的结构、添加数据、修改数据以及删除数据等操作。 3. SQL查询与操作:通过SQLite3 VC Demo,我们可以学习如何使用SQL语句进行数据查询和操作。例如,可以使用SELECT语句从表中获取数据,使用INSERT语句向表中插入数据,使用UPDATE语句更新表中的数据,以及使用DELETE语句删除表中的数据等。 总之,SQLite3 VC Demo是一个非常有用的示例程序,可以帮助我们快速入门并掌握在Visual C++开发中使用SQLite3进行数据存储和管理的基本技巧。无论是初学者还是有一定开发经验的程序员,都可以通过掌握SQLite3 VC Demo来提升自己在应用程序开发中的数据库处理能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值