2013-03-14 4 views
3

Je ne trouve rien sur l'obtention de flottants à partir d'un ensemble de résultats ou sur la façon de stocker des flottants dans une instruction préparée pour créer une requête afin d'insérer le nombre flottant. Est-il possible de faire cela? Devrais-je les stocker en utilisant un tableau char? Merci d'avanceMysql Connector C++ et flottants

Répondre

4

Pour la récupération des résultats, j'attends que vous utilisiez ResultSet::getDouble - pour les instructions, PreparedStatement::setDouble.

Il ne semble pas y avoir d'hébergement pour float spécifiquement, mais la définition de colonne sous-jacente sera FLOAT ou DOUBLE.

+0

Merci pour votre réponse, il me semble avoir un problème à l'aide getDouble(), en utilisant une table comme avec lat et en double LON: while (res-> précédente()) { Cout << "Impression ligne" << res-> getInt ("id") << "|" << res-> getDouble ("lat") << "|" << res-> getDouble ("lon") << endl; } me fait un: appelé après avoir jeté Mettre fin à une instance de sql :: InvalidArgumentException ' ce(): MySQLPreparedResultSet :: getDouble: invalide 'columnIndex' qui ne se produit que lorsque je tente de récupérer les colonnes lat ou LON. – Lautaro

+0

C'est assez mauvais, peut-être que vous * devez * utiliser des chaînes et convertir d'avant en arrière. Avez-vous essayé de le faire de cette façon? –

+0

Je ne vois pas que les chaînes sont nécessaires, le code source semble permettre d'obtenir le double. http://bazaar.launchpad.net/~mysql/mysql-connector-cpp/trunk/view/head:/driver/mysql_ps_resultset.cpp - Êtes-vous sûr que les ID de colonne sont corrects? –