MySQL连接器C++和浮点数

5

我找不到有关从结果集获取浮点数或如何将浮点数存储在准备好的语句中以创建查询以插入浮点数的任何信息。是否有可能这样做?我应该使用char数组来存储它们吗?

提前感谢。

1个回答

7

为了检索结果,我希望您使用 ResultSet::getDouble - 对于语句,使用PreparedStatement::setDouble.

似乎没有特别针对float的处理,但基础列定义将是FLOATDOUBLE


谢谢你的回答,我似乎在使用getDouble()时遇到了问题,使用一个像lat和lon这样的双精度表: while (res->previous()) { cout << "Printing Row" << res->getInt("id") << "|" << res->getDouble("lat") << "|" << res->getDouble("lon") << endl; } 会给我带来: terminate called after throwing an instance of 'sql::InvalidArgumentException' what(): MySQLPreparedResultSet::getDouble: invalid 'columnIndex' 只有当我尝试检索lat或lon列时才会发生这种情况。 - Lautaro
这很糟糕,也许你确实需要使用字符串并进行来回转换。你试过那种方法吗? - Steve Townsend
1
我认为字符串并不必要,源代码似乎允许获取双精度数值。你确定列ID是正确的吗?http://bazaar.launchpad.net/~mysql/mysql-connector-cpp/trunk/view/head:/driver/mysql_ps_resultset.cpp - Steve Townsend
抱歉,我只选择了id。非常感谢你的帮助! - Lautaro
1
太好了,至少这鼓励我去追踪源代码;-) - Steve Townsend

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接