29 #ifndef GUM_NANODBC_PARSER_H 30 #define GUM_NANODBC_PARSER_H 38 #include <agrum/agrum.h> 39 #include <agrum/tools/external/nanodbc/nanodbc.h> 53 template <
template<
typename>
class ALLOC = std::allocator>
58 using allocator_type = ALLOC<std::string>;
67 NanodbcParser(
const ALLOC<std::string>& alloc = ALLOC<std::string>() );
74 NanodbcParser( nanodbc::connection& connection,
75 const std::string& query,
76 const ALLOC<std::string>& alloc = ALLOC<std::string> () );
79 virtual ~NanodbcParser();
95 const std::vector<std::string,ALLOC<std::string>>& current()
const;
98 std::size_t nbLine()
const;
101 std::size_t nbColumns ()
const;
104 std::string columnName (
const std::size_t i )
const;
107 void useNewQuery ( nanodbc::connection& connexion,
108 const std::string& query );
113 #ifndef DOXYGEN_SHOULD_SKIP_THIS 118 nanodbc::result _result_;
121 std::size_t _nb_line_ { std::size_t(0) };
124 std::vector<std::string,ALLOC<std::string>> _data_;
134 #include <agrum/tools/database/nanodbcParser_tpl.h>