hello
Je ne parviens pas a afficher ce que je veux:
disons que j'enregistre dans un champ A de type : double precision la valeur 5000000000000000000
celon pgadmin3 et le shell ,le contenu est : 5e+18
donc comment afficher avec std::cout la valeur 5e+18 sous la forme de 5000000000000000000 ?
voila un petit bout de code (pas aux point mai pour donner une idée)
la doc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39 void cSqlPqxx::AfficheAll(){ if (auto_transaction){ cSqlPqxx::StartTransaction(); } //permet la requette const pqxx::result& r =(*p_work).exec(cSS.Get_AfficheFull());//Get_AfficheFull est la requette for (pqxx::result::const_iterator cit = r.begin(); cit != r.end();//boucle sur le nombre de tuple (ligne renvoiyée) ++cit) { //boucle sur les collonnes for (unsigned int countcol = 0; countcol < r.columns();countcol++){ //je gere de cette menière le type de donnée peut etre il y a mieux ? switch ((*cit).column_type(countcol)) { case 23: //std::cout << r.column_name(countcol) << " ===>" << (*cit).column_type(countcol) << std::endl;// int --> int std::cout <<(*cit)[countcol].as(int ()) << std::endl; break; case 25://std::cout << r.column_name(countcol) << " ===>" << (*cit).column_type(countcol) << std::endl;//std::string -->text std::cout <<(*cit)[countcol].c_str() << std::endl; break; case 20://std::cout << r.column_name(countcol) << " ===>" << (*cit).column_type(countcol) << std::endl;//long-->big int std::cout <<(*cit)[countcol].as(int ()) << std::endl; break; case 700://std::cout << r.column_name(countcol) << " ===>" << (*cit).column_type(countcol) << std::endl; //float -->real std::cout <<(*cit)[countcol].as(float ()) << std::endl; break; case 701://std::cout << r.column_name(countcol) << " ===>" << (*cit).column_type(countcol) << std::endl; //double -->real std::cout << (*cit)[countcol].as(double ()) << std::endl; break; default: std::cout << r.column_name(countcol) << "ERREUR type non gérer!===>" << (*cit).column_type(countcol) << std::endl; //float -->real } } } if (auto_transaction){ cSqlPqxx::Commit(); } }
http://pqxx.org/devprojects/libpqxx/...tml/Reference/
lien direct sur la fonction:
http://pqxx.org/devprojects/libpqxx/...ce/a00076.html
certainement un problème avec std::cout << (*cit)[countcol].as(double ()) << std::endl;
mai je ne voit pas ce que je peux faire ??
Partager