微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Sqlite3的简单用法,得到行数和列值【附源码和文件】

测试环境:VC6.0

代码走起:

#include <stdio.h>

#include <stdlib.h>

#pragma comment(lib,"sqlite3.lib")2

#include "sqlite3.h"

void Search();

sqlite3 *zhao;

int main()
{
    sqlite3_open("hulu.db",&zhao);

    char sql[300];

	
/*	sprintf(sql,"insert into student values('1','t','1');");//数据的插入测试

	sqlite3_exec(zhao,sql,NULL);*/                      //数据的插入测试

	Search();//查找

    sqlite3_close(zhao);

	return 0;
}

//查找
void Search()
{
   int result;

   char * errmsg = NULL;
   
   char **dbResult; //是 char ** 类型,两个*号
   
   int nRow,nColumn;
   
   int i,j;
   
   int index;
 
   result = sqlite3_get_table( zhao,"select * from student where Age > 6;",&dbResult,&nRow,&nColumn,&errmsg );
   
   if( sqlITE_OK == result )
   {
        //查询成功
        index = nColumn; //前面说过 dbResult 前面第一行数据是字段名称,从 nColumn 索引开始才是真正的数据
   
		printf( "查到%d条记录\n",nRow );
 
        for(  i = 0; i < nRow ; i++ )
        {
             printf( "第 %d 条记录\n",i+1 );
          
			 for( j = 0 ; j < nColumn; j++ )
             {
                  printf( "字段名:%s  -> 字段值:%s\n",dbResult[j],dbResult [index] );
             
				  ++index; // dbResult 的字段值是连续的,从第0索引到第 nColumn - 1索引都是字段名称,从第 nColumn 索引开始,后面都是字段值,它把一个二维的表(传统的行列表示法)用一个扁平的形式来表示
             }
          
			 printf("-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-\n");
        }
   }
}
下载源代码

原文地址:https://www.jb51.cc/sqlite/199969.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐