从SQLIT数据库中取出表的数据存于结构体中的C语言代码

拜托大神们,帮帮忙Sqlite数据库表中有int、vchar(50)的数据,读出结果,然后放到一个结构体中,用C语言写,帮忙写一段代码,结构体那块老出问题

第1个回答  推荐于2016-04-04
如果你用sqlite_get_table的话得到的前N列是你的表头。应该从第N个开始往后读。N是你create table 时的元素个数。

例如:
sqlite3_get_table(m_pSqlDb,pStrSql,&szResult,&iRow,&iColumn,&chErrMsg);
int nIndex = iColumn;
for (int row=0;row<iRow;row++)
{
for (int column=0;column<iColumn;column++)
{
在这里赋值。
szResult[nindex++] 是取到的值。你直接付给你的结构体就行。你最好做一下判断。

}

}本回答被提问者采纳
第2个回答  2016-01-02
如果你用sqlite_get_table的话得到的前N列是你的表头。应该从第N个开始往后读。N是你create table 时的元素个数。

例如:
sqlite3_get_table(m_pSqlDb,pStrSql,&szResult,&iRow,&iColumn,&chErrMsg);
int nIndex = iColumn;
for (int row=0;row<iRow;row++)
{
for (int column=0;column<iColumn;column++)
{
在这里赋值。
szResult[nindex++] 是取到的值。你直接付给你的结构体就行。你最好做一下判断。

}

}
提问者评价
谢谢!
第3个回答  2016-01-21
int LoadInfoCallBack( void * para, int n_column, char ** column_value, char ** column_name )

{
if( 2 != n_column )
{
// 字段个数不对
assert( false );
return -1;
}
CTestInfo ti;

ti.m_wstrEmailPwd=column_value[0];
ti.id = atoi( column_value[1] );
return 0;
}
void LoadInfo()
{
int iRet;
char * err;

iRet = sqlite3_exec( this->GetDB(), "select * from tbl_info", LoadInfoCallBack, this, &err );
if( SQLITE_OK != iRet )
{
printf("Load info failed.\n");
return;
}
}

从SQLIT数据库中取出表的数据存于结构体中的C语言代码
int nIndex = iColumn;for (int row=0;row<iRow;row++){ for (int column=0;column

学习gorm之创建数据库连接
`gorm.Open` 函数返回一个 `gorm.DB` 对象,这是 gorm 中的核心数据结构。`gorm.DB` 结构包含 `Config` 和 `Statement` 两个主要字段。`Config` 结构体包含了数据库连接配置,如账号密码、连接地址、日志等。`Statement` 结构体则包含与 SQL 语句相关的元素,如表、模型、选择、模式等。总结 gor...

Golang数据库编程之GORM库入门
其中,GORM 是一个功能完善且易于使用的 Go 语言 ORM 框架,能够将关系型数据库中的数据表映射为编程语言中的具体数据类型,如结构体(struct)。要开始使用 GORM,首先需要安装框架。通过在 GOPATH 目录下运行 `go get -u gorm.io\/gorm` 命令即可完成安装。接下来,只需导入 GORM 库并使用 `impor...

C++中定义一个结构体数组,该数组中有100个这样的结构体对象,怎么给这个...
100个一般建议你把数据(也就是0,80,0,0,-10,0,1.0这些)存储到文件或数据库里(数据库比如象sqlite),程序运行后从文件中读取这些数据。

数据库文件怎么才能在程序中被使用
以下演示一下使用sqlite的步骤,先创建一个数据库,然后查询其中的内容。2个重要结构体和5个主要函数:sqlite3 *pdb, 数据库句柄,跟文件句柄FILE很类似 sqlite3_stmt *stmt, 这个相当于ODBC的Command对象,用于保存编译好的SQL语句 sqlite3_open(), 打开数据库 sqlite3_exec(), 执行非...

了解物联网知识需要学习哪些知识
备注 物联网产业与技术导论 《物联网:技术、应用、标准与商业模式》,电子工业出版社,等教材。在学完高等数学,物理,化学,通信原理,数字电路,计算机原理,程序设计原理等课程后开设本课程,全面了解物联网之RFID、M2M、传感网、两化融合等技术与应用。C语言程序设计 《C语言程序设计》,清华大学出版...

北京北大青鸟校区IOS课程介绍?
static 1、Xcode、SVN2、C语言是iOS开发的入门基础语言,本部分主要介绍C语言的基本语法,程序结构,以及指针的各种操作。为接下来Objective-C语言的学习打下基础。 1、面向对象(OOP)和面向过程、类(Class)和对象(Object)、类的定义2、创建对象、...

相似回答