VC++操作SQLite简单实例

时间:2021-05-20

对于很多程序员来说,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 = %s\n", 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: %s\n", 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;}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章