我正在创建一个将msgs保存到数据库中的服务器(sqlite3),然后将它们发送给一些客户端。问题是如何从数据库中获取数据,顺便说一下我是C中的sqlite3 API的新手,这里是我有一部分代码:
snprintf( commands, 256, "SELECT Msg FROM %s WHERE timeStamp BETWEEN %ld AND %ld;",
sn, ( serverTime - diff->tv_sec ), serverTime );
rc = sqlite3_prepare_v2( db, commands, -1, &res, 0 );
while( sqlite3_step( res ) == SQLITE_ROW )
{
// ????????
}
我有一个包含3列用户名的表:“Id INTEGER PRIMARY KEY,timeStamp INT,Msg TEXT”
我想从客户端获取服务器时间和最后一次连接的差异(serverTime - diff-> tv_sec)
答案 0 :(得分:0)
因为“Msg”是TEXT。所以在while循环中你可以调用“sqlite3_column_text()”
while( sqlite3_step( res ) == SQLITE_ROW )
{
const char *msg = sqlite3_column_text(res, 0);
//Use msg
}
要获得正确的结果,请确保commands
即您的SQL查询正确。