Bonjour,
je souhaite dans le cadre d'un développement, récupérer en base de données, un champ nommé maDate de type : datetime.
Seulement voilà je souhaites le récupérer dans un string.
Voici mon code actuel, qui bien entendu me génère une belle erreur non pas à la compilation mais à l'exécution. (Blabla à propos de mauvais DLL, mais il est un peu à côté de la plaque, c'est bien un problème de type).
Je précise que le problème intervient bien à l'exécution de mon
_resultBDD->getString("maDate")
, logique mettre un datetime dans un string...
J'aurais aimé avoir un getInt pour string, mais je n'ai rien trouvé à ce sujet ou du moins ... je n'ai pas su m'y prendre.
A noter que je ne peux pas modifier le type de mon champ maDate, dans la base de données.
A oui une dernière chose qui me chagrine. Juste avant que ça n'explose, je peux tout de même afficher le résultat de la requête, et voir la date souhaitée. Du coup je peux en conclure qu'il y arrive, alors pourquoi râle t'il ? 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| void maClasse::maMethode(std::string const & numero)
{
try //tentative tvb
{
_statementBDD = _connexionBDD->createStatement();
_resultBDD = _statementBDD->executeQuery("SELECT * FROM cdr WHERE src=" + numero);
std::cout << "----- Source ----- Destination ----- Date ----- temps -----" << std::endl;
while (_resultBDD->next())
std::cout << _resultBDD->getString("src") << " - " << _resultBDD->getString("dst") << " - " << _resultBDD->getString("calldate") << " - " << _resultBDD->getInt("duration") << std::endl;
_resultBDD = NULL;
}
catch (SQLException &e) //exception 1
{
std::cerr << "ERROR: SQLException in " << __FILE__;
std::cerr << " (" << __FUNCTION__ << ") on line " << __LINE__ << std::endl;
std::cerr << "ERROR: " << e.what();
std::cerr << " (MySQL error code: " << e.getErrorCode();
std::cerr << ", SQLState: " << e.getSQLState() << ")" << std::endl;
}
} |
Merci
Partager