//============================================================================
// Author      : SaEeD
// Description : connecting and executing query in MySql database in C++
//============================================================================

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#include <mysql.h>


int main(int argc,char *argv[])
{
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;

char *user="YOUR_MYSQL_USERNAME";
char *pass = "YOUR_PASSWORD";
char *database = "DATABASE_NAME";
char *server="MYSQL_SERVER_IP_ADDRESS";

if(argc != 2){
	fprintf(stderr,"Usage: %s <mysql query> \n",argv[0]);
	exit(0);
}

conn = mysql_init(NULL);

if(conn == NULL){
	fprintf(stderr , "Error in mysql constructure!\n");
	exit(0);

}
//Connecting to database;
if(!mysql_real_connect(conn,server,user,pass,database,0,NULL,0))
{
	fprintf(stderr,"Error: %s\n",mysql_error(conn));
	exit(1);
}
printf("[+]Connection to Database was Successful...\n");

//Database query
if(mysql_query(conn,argv[1])){
	fprintf(stderr,"Error: %s\n",mysql_error(conn));
exit(1);
}

printf("[+]User Query is:%s\n",argv[1]);

res = mysql_use_result(conn);

printf("[+]Query results:\n");
while((row = mysql_fetch_row(res)) !=NULL){
printf("%s \n",row[0]);
}
mysql_free_result(res);
mysql_close(conn);

printf("[!]Closing connection to database\n");
return EXIT_SUCCESS;
}