当前位置:  编程技术>c/c++/嵌入式

VC++操作SQLite简单实例

    来源: 互联网  发布时间:2014-10-26

    本文导语:  对于很多程序员来说,SQLite并不陌生。SQLite 是一款主要用于嵌入式的开源数据库,可集成在自己的桌面程序中,也可替代Access作为后台数据库。SQLite 支持多数SQL92标准,例如:索引、限制、触发和查看支持,支持 NULL、INTEGER、...

对于很多程序员来说,SQLite并不陌生。SQLite 是一款主要用于嵌入式的开源数据库,可集成在自己的桌面程序中,也可替代Access作为后台数据库。SQLite 支持多数SQL92标准,例如:索引、限制、触发和查看支持,支持 NULL、INTEGER、REAL、TEXT 和 BLOB 数据类型,支持事务。以下是一些SQLite的简单使用。

//建立数据库
C:sqlite-3_6_11> sqlite3.exe dbname.db

建立数据库的时候sqlite3.exe后面跟数据库文件名

//创建数据表
sqlite> create table users(userid varchar(20) PRIMARY KEY,
...> age int,
...> birthday datetime);
//添加记录
insert into users values('wang',20,'1989-5-4');
insert into users values('li',22,'1987-11-16');
//查询记录
select * from users order by birthday;
//删除记录
delete from users where userid='wang';
//退出
sqlitesqlite> .exit

SQLite数据库的数据结构是存贮在 "sqlite_master" 表中,具体命令可以输入.help查看或参考SQLite帮助文档。
在VC下使用SQLite的简单例子:

#include "../sqlite3_lib/sqlite3.h" //请以你的地址为准
#pragma comment(lib, "../sqlite3_lib/sqlite3.lib")//请以你的地址为准
static int _sql_callback(void * notused, int argc, char ** argv, char ** szColName)
{
int i;
for ( i=0; i < argc; i++ )
{
printf( "%s = %sn", szColName[i], argv[i] == 0 ? "NUL" : argv[i] );
}
return 0;
}
int main(int argc, char * argv[])
{
const char * sSQL1 = "create table users(userid varchar(20) PRIMARY KEY, age int, birthday datetime);";
const char * sSQL2 = "insert into users values('wang',20,'1989-5-4');";
const char * sSQL3 = "select * from users;";
sqlite3 * db = 0;
char * pErrMsg = 0;
int ret = 0;
//连接数据库
ret = sqlite3_open("./test.db", &db);
if ( ret != SQLITE_OK )
{
fprintf(stderr, "不能打开数据库: %s", sqlite3_errmsg(db));
return(1);
}
printf("数据库连接成功!n");
//执行SQL建立数据库
sqlite3_exec( db, sSQL1, 0, 0, &pErrMsg );
if ( ret != SQLITE_OK )
{
fprintf(stderr, "SQL error: %sn", pErrMsg);
sqlite3_free(pErrMsg);
}
//插入记录
sqlite3_exec( db, sSQL2, 0, 0, &pErrMsg);
//查询数据表
sqlite3_exec( db, sSQL3, _sql_callback, 0, &pErrMsg);
//关闭数据库
sqlite3_close(db);
db = 0;
return 0;
}

    
 
 

您可能感兴趣的文章:

  • .NET下 c#通过COM组件操作并导出Excel实例代码
  • Python文件操作类操作实例详解
  • PHP实现的连贯操作、链式操作实例
  • 大家帮我推荐些在linux下用c语言对数据库操作编程的实例或资料吧!谢谢!
  • C#实现装箱与拆箱操作简单实例
  • c#剪切板操作的简单实例
  • yii操作cookie实例简介
  • 请问如何在自定然义的类中如MyClass,不用new这个操作符来产生一个这个类的实例
  • Linux操作系统下Oracle数据库多实例启动方式及修改内存
  • c#判断操作系统位数实例代码
  • 数组循环移位操作实例
  • C#的WebBrowser操作frame实例解析
  • java文件操作代码片断实例实现统计文件中字母出现的个数功能
  • Android对sdcard扩展卡文件操作实例详解
  • C# WinForm中Panel实现用鼠标操作滚动条的实例方法
  • C#文件操作的简单实例
  • VC实现ODBC数据库操作实例解析
  • asp.net操作cookie实例代码
  • Jquery操作radio的简单实例
  • C#读写xml配置文件(LINQ操作实例)
  • jQuery 操作下拉列表框的实例分享
  • 嵌入式中,利用C语言操作SQLite数据库,查询没有数据返回,请大家帮忙看看哈
  • linux c语言操作数据库(连接sqlite数据库)
  • Python操作SQLite简明教程
  • 将备份的SQLServer数据库转换为SQLite数据库操作方法
  • C++操作SQLite简明教程
  • python操作数据库之sqlite3打开数据库、删除、修改示例
  • Python操作sqlite3快速、安全插入数据(防注入)的实例
  • mysql iis7站长之家
  • Android--SQLite(增,删,改,查)操作实例代码
  • Android SQLite数据库增删改查操作的案例分析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Stacks(堆栈) 成员 操作:比较和分配堆栈
  • 谁有操作系统PV操作的例子???谁有操作系统PV操作的例子???谢谢!!
  • C++ Strings(字符串) 成员 Operators:操作符,用于字符串比较和赋值
  • 已安装了Windows操作系统,还想安装Linux。却还想在开机选择操作系统时由Windows引导,请问如何操作。在线等待
  • C++ I/O 成员 flags():操作flags
  • 请问LINUX操作系统是怎样对外围设备进行操作的
  • C++ I/O 成员 width():操作域宽度
  • 什么样的操作最耗费服务器的IO操作?
  • c#对象中两种copy操作:深拷贝(Deep Copy)与浅拷贝(Shallow Copy)
  • 无操作系统下对U盘的操作
  • Xcode介绍及创建工程和工程依赖操作步骤
  • 请问命令行操作下怎么改Linux操作系统的日期和时间?
  • MyEclipse如何查看和设置文件编码格式相关操作
  • 正在学操作系统原理,做操作系统方面的实验用那种工具较好?
  • Html checkbox标签如何设置默认选中以及用js操作checkbox代码示例
  • 请问16位操作系统和32位操作系统的区别?
  • c/c++ 操作符优先级参考
  • 基于linux操作系统之上操作LCD问题,急???
  • javascript操作html复选框checkbox:如何判断复选框是否被选中
  • 哪位大侠知道Linux里的有名管道传送数据快不快?有名管道操作的过程是否有读写硬盘的操作?
  • Plesk 中操作和设置 Docker 容器
  • 如何在一个用户对application操作时防止别的用户对它操作?(好难啊)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3