在这篇文档里,你不需要任何配置也无需阅读冗长的文档,就可以简单使用SQLite数据库,这是其入门说明文档:
下载SQLite
根据你的机器的系统, 可以下载一份编译好的二进制SQLite, 或者下载其源码进行编译.可以访问下载页获得更多信息.
创建一个SQLite数据库文件
- 在shell或者DOS的控制终端中, 输入”sqlite3 test.db“,这将创建一个新的数据库文件”test.db”, 当然你也可以为这个数据库文件命名不同的名字.
- 在控制终端中,输入SQL命令,创建并填充这个新数据库.
- 了解更多信息, 请访问这里.
编程访问SQLite
- 下面是一个简单的TCL程序,使用TCL接口来访问SQLite的例子. 第一个参数是数据库文件, 第二个参数是SQL语句.注意第7行的sqlite3命令将打开数据库,并创建一个新对象”db“来访问这个数据库,第8行的db对象使用eval方法来运行SQL语句,脚本的最后一行关闭数据库连接.
01 #!/usr/bin/tclsh
02 if {$argc!=2} {
03 puts stderr "Usage: %s DATABASE SQL-STATEMENT"
04 exit 1
05 }
06 package require sqlite3
07 sqlite3 db [lindex $argv 0]
08 db eval [lindex $argv 1] x {
09 foreach v $x(*) {
10 puts "$v = $x($v)"
11 }
12 puts ""
13 }
14 db close
- 下面是一个简单的C程序,使用C/C++接口来访问SQLite的例子. 第一个参数是数据库文件,第二个参数是一个或者多个SQL语句. 需要注意的是,第22行的函数调用 sqlite3_open()将打开数据库.第28行的 sqlite3_exec()将执行SQL语句, 第33行的sqlite3_close()将关闭数据库连接.
请参考SQLite C/C++接口介绍, 了解所有的接口函数及其演进.
01 #include <stdio.h>
02 #include <sqlite3.h>
03
04 static int callback(void *NotUsed, int argc, char **argv, char **azColName){
05 int i;
06 for(i=0; i<argc; i++){
07 printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
08 }
09 printf("\n");
10 return 0;
11 }
12
13 int main(int argc, char **argv){
14 sqlite3 *db;
15 char *zErrMsg = 0;
16 int rc;
17
18 if( argc!=3 ){
19 fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv[0]);
20 return(1);
21 }
22 rc = sqlite3_open(argv[1], &db);
23 if( rc ){
24 fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
25 sqlite3_close(db);
26 return(1);
27 }
28 rc = sqlite3_exec(db, argv[2], callback, 0, &zErrMsg);
29 if( rc!=SQLITE_OK ){
30 fprintf(stderr, "SQL error: %s\n", zErrMsg);
31 sqlite3_free(zErrMsg);
32 }
33 sqlite3_close(db);
34 return 0;
35 }
请参考SQLite程序编译文档,来编译上面的TCL和C语言的示例程序.
====================================分割线===========================================
原文链接:https://www.sqlite.org/quickstart.html
注:
C程序的例子中, callback函数是sqlite3_exec执行的回调函数.当SQL语句是查询语句时, 对查询结果集中的每一行都将执行该回调函数.
本文档介绍了如何快速开始使用SQLite数据库,包括下载安装、创建数据库文件、执行SQL命令等基本操作,并提供了TCL和C语言编程访问SQLite的示例。

82

被折叠的 条评论
为什么被折叠?



