Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.9.146] |
|
Сообщ.
#1
,
|
|
|
пытаюсь использовать базу данных Postgresql с помощью pqxx на Ubuntu Linux
libpqxx установил, #include <pqxx/connection.h> и остальные pqxx/* подключаются успешно в конце http://pqxx.org/development/libpqxx/ скачал примеры с кодом, но любой из них во время компиляции возвращает тонну ошибок в pqxx::cachedresult, pqxx::Cursor, pqxx::result, pqxx::connect_direct, вот один из примеров и возврат при его компиляции #include <iostream> #include <pqxx/connection.h> #include <pqxx/transaction.h> #include <pqxx/cachedresult.h> using namespace std; using namespace pqxx; int main() { try { Connection C(""); Transaction T(C, "sample4"); CachedResult R(T, "SELECT * FROM events ORDER BY year", "result4", 2); // Read query results, fetching them on demand for (Result::size_type i = 0; i < R.size(); ++i) cout << '\t' << R[i][0].c_str() << '\t' << R[i][1].c_str() << endl; } catch (const exception &e) { cerr << "Exception: " << e.what() << endl; return 1; } return 0; } /usr/include/pqxx/cachedresult.h: In constructor ‘pqxx::cachedresult::cachedresult(TRANSACTION&, const char*, const std::string&, long unsigned int) [with TRANSACTION = pqxx::Transaction]’: sol.cpp:19: instantiated from here /usr/include/pqxx/cachedresult.h:90: error: no matching function for call to ‘pqxx::cachedresult::error_permitted_isolation_level(pqxx::isolation_traits<read_committed>)’ /usr/include/pqxx/cachedresult.h:138: note: candidates are: static void pqxx::cachedresult::error_permitted_isolation_level(pqxx::isolation_traits<serializable>) /usr/include/pqxx/cursor.h: In constructor ‘pqxx::Cursor::Cursor(TRANSACTION&, const char*, const std::string&, long int) [with TRANSACTION = pqxx::transaction<read_committed>]’: /usr/include/pqxx/cachedresult.h:87: instantiated from ‘pqxx::cachedresult::cachedresult(TRANSACTION&, const char*, const std::string&, long unsigned int) [with TRANSACTION = pqxx::Transaction]’ sol.cpp:19: instantiated from here /usr/include/pqxx/cursor.h:115: error: no matching function for call to ‘pqxx::Cursor::error_permitted_isolation_level(pqxx::isolation_traits<read_committed>)’ /usr/include/pqxx/cursor.h:276: note: candidates are: static void pqxx::Cursor::error_permitted_isolation_level(pqxx::isolation_traits<serializable>) может я что-то делаю не так ? или может как-то проще можно использовать Postgres с C++ ? |
Сообщ.
#2
,
|
|
|
Во время сборки нужно указать ключик похожий на -lpqxx(подключить саму библиотеку). В документации должно быть указано какую именно библиотеку подключать.
|