#include #include #include "libpq-fe.h" #include "reset.h" int main(int argc, char *argv[]) { int i; int options; int day; int month; int year; PGconn *conn; char SQL_query[512]; PGresult *res; day = month = year = 0; conn = PQsetdbLogin(PGHOST, PGPORT, PGOPTIONS, PGTTY, DBNAME, LOGIN, PWD); if(CONNECTION_BAD == PQstatus(conn)) { fprintf(stderr, "Connection to database '%s' failed.\n %s", DBNAME, PQerrorMessage(conn)); PQfinish(conn); return 1; } if(0 < day) { for(i = 0; i <= day; i++) { sprintf(SQL_query, "UPDATE counter_day SET \"%0.2d\" = 0;", i); res = PQexec(conn, SQL_query); if((NULL == res) || (PGRES_COMMAND_OK != PQresultStatus(res))) { printf("Unable to execute query: %s\n %s\n", SQL_query, PQerrorMessage(conn)); PQclear(res); PQfinish(conn); return 1; } PQclear(res); } } if(0 < month) { for(i = 1; i <= month; i++) { sprintf(SQL_query, "UPDATE counter_month SET \"%0.2d\" = 0;", i); res = PQexec(conn, SQL_query); if((NULL == res) || (PGRES_COMMAND_OK != PQresultStatus(res))) { printf("Unable to execute query: %s\n %s\n", SQL_query, PQerrorMessage(conn)); PQclear(res); PQfinish(conn); return 1; } PQclear(res); } } if(1 == year) { sprintf(SQL_query, "INSERT INTO counter_year VALUES (counter_year.year +1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);"); res = PQexec(conn, SQL_query); if((NULL == res) || (PGRES_COMMAND_OK != PQresultStatus(res))) { printf("Unable to execute query: %s\n %s\n", SQL_query, PQerrorMessage(conn)); PQclear(res); PQfinish(conn); return 1; } PQclear(res); } PQfinish(conn); return 0; }