diff --git a/server.cpp b/server.cpp index d3f0254..fe2043f 100644 --- a/server.cpp +++ b/server.cpp @@ -16,16 +16,20 @@ void exiting(){ delete stmt; } +void connect(){ + con = driver->connect(getenv("DBURL"),getenv("DBUSER"),getenv("DBPWD")); + con->setSchema("practice"); + stmt = con->createStatement(); +} + int main() { crow::App app; driver = get_driver_instance(); - con = driver->connect(getenv("DBURL"),getenv("DBUSER"),getenv("DBPWD")); - con->setSchema("practice"); - stmt = con->createStatement(); CROW_ROUTE(app, "/categories")([](){ + connect(); crow::json::wvalue entries; ResultSet *res = stmt->executeQuery("SELECT practice_categories.id, practice_categories.name AS category, instruments.name AS instrument FROM practice_categories JOIN instruments ON practice_categories.instrument_id = instruments.id ORDER BY instruments.name ASC, category ASC"); @@ -44,6 +48,7 @@ int main() }); CROW_ROUTE(app, "/summary")([](){ + connect(); crow::json::wvalue entries; ResultSet *res = stmt->executeQuery("SELECT * FROM summary ORDER BY chunks_practiced ASC;"); @@ -64,6 +69,7 @@ int main() }); CROW_ROUTE(app, "/mins-left-to-practice-today")([](){ + connect(); crow::json::wvalue entries; ResultSet *res = stmt->executeQuery("SELECT * FROM mins_left_to_practice_today;");