1、案例一:获取SQLite的版本

#include <sqlite3.h>
#include <stdio.h>

int main(void) 
{
    printf("%s\n", sqlite3_libversion()); 
    
    return 0;
}

在Linux环境下需要:

1、安装sqlite3: sudo apt-get install  sqlite3

2、安装sqlite3的编译工具包: sudo apt-get install libsqlite3-dev  

3、创建test.c,编写上面代码 ,然后 gcc test.c -o test -lsqlite3 进行编译

 

2、案例二:使用SQL的查询功能获取SQLite的版本

#include <sqlite3.h>
#include <stdio.h>

int main(int argc, char* argv[])
{
	sqlite3 *db;
	sqlite3_stmt *pStmt;

	/*在内存中创建一个新的数据库。数据库连接关闭后,数据库就不再存在*/
	if (sqlite3_open(":memory:", &db) !=  SQLITE_OK) 
	{
		fprintf(stderr, "Cann't open database: %s\n ", sqlite3_errmsg(db));
		sqlite3_close(db);
		return 1;
	}

	/* "SELECT SQLITE_VERSION()" 语句查询SQLite版本信息 */
	/* 如果sql语句编译成功,编译后的语句对象存储在pStmt指针指向的地址中 */
	if(sqlite3_prepare_v2(db, "SELECT SQLITE_VERSION()", -1, &pStmt, 0) != SQLITE_OK)
	{
		fprintf(stderr, "failed to fetch data: %s \n", sqlite3_errmsg(db));
		sqlite3_close(db);
		return 1;
	}

	/* sqlite3_step 执行sql语句, SQLITE_ROW表示查询成功,并且返回了一行结果 */
	/* sqlite3_column_text 函数获取结果的第一列的文本内容 */
	if(sqlite3_step(pStmt) == SQLITE_ROW)
	{
		printf("%s\n", sqlite3_column_text(pStmt, 0));
	}

	sqlite3_finalize(pStmt);

	sqlite3_close(db);

	return 0;
}
xuanmiao@linux:~/Demo/SQLite$ gcc test1.c -o test1 -lsqlite3
xuanmiao@linux:~/Demo/SQLite$ ls
test1  test1.c
xuanmiao@linux:~/Demo/SQLite$ ./test1
3.31.1
posted on 2023-06-07 10:35  轩~邈  阅读(94)  评论(0)    收藏  举报