5分钟学会SQLite

来源:互联网 发布:淘宝欧斯曼真皮双肩包 编辑:程序博客网 时间:2024/04/27 18:15

这里是开始SQLite实验你需要去做的事,并不需要很多枯燥的阅读与配置:

下载代码

  • 为你机器获取一份预编译的二进制程序,或者获取一份源代码并且自己编译它们。可以到download页面获取更多信息。

创建新数据库

  • 在shell或DOS提示符下,输入:“sqlite3 test.db”。这会创建一个新的名为“test.db"的数据库。(你可以使用你喜欢的其它不同名称。)
  • 在提示符下输入SQL命令产生与填充新数据库。
  • 更多的文件在这里。

用SQLite写程序

  • 下面是一个显示如果使用SQLite的TCL接口简单的程序。该程序在第一个参数定义的数据库中执行作为第二个参数提供的SQL语句。该命令在第7行寻找sqlite3命令,它打开SQLite数据库并且创建创建一个新的名为”db“的对象访问数据库,第8行使用的作用于db对象的eval方法在数据库上运行SQL命令,并且在脚本的最后一行关闭数据库连接。
    #!/usr/bin/tclshif {$argc!=2} {  puts stderr "Usage: %s DATABASE SQL-STATEMENT"  exit 1}package require sqlite3sqlite3 db [lindex $argv 0]db eval [lindex $argv 1] x {  foreach v $x(*) {    puts "$v = $x($v)"  }  puts ""}db close

  • 下面是展示如何使用SQLite的C/C++接口的一个简单的C程序。数据库的名称由第一个参数提供,且第二个参数是一个或多个在数据库上执行的SQL语句。这些需要注意的函数调用是22行的调用打开数据库的sqlite3_open(),28行的在数据库上执行SQL语句sqlite3_exec(),与33行的关闭数据库连接的sqlite3_close()。
    可以参考Sqlite C/C++接口介绍了解大量的SQLite接口函数的概括与指引。
    #include <stdio.h>#include <sqlite3.h>static int callback(void *NotUsed, int argc, char **argv, char **azColName){  int i;  for(i=0; i<argc; i++){    printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");  }  printf("\n");  return 0;}  int main(int argc, char **argv){  sqlite3 *db;  char *zErrMsg = 0;  int rc;   if( argc!=3 ){    fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv[0]);    return(1);  }  rc = sqlite3_open(argv[1], &db);  if( rc ){    fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));    sqlite3_close(db);    return(1); }  rc = sqlite3_exec(db, argv[2], callback, 0, &zErrMsg);  if( rc!=SQLITE_OK ){    fprintf(stderr, "SQL error: %s\n", zErrMsg);    sqlite3_free(zErrMsg);  }  sqlite3_close(db);  return 0;}


原创粉丝点击