I found this code from: http://www.davenicholas.me.uk/blog/view_post/29/How-to-c-mysql-mac-osx
#include <mysql.h>
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <string>
#include <vector>
int main()
{
std::vector<std::string> tables;
MYSQL_RES *result;
MYSQL_ROW row;
MYSQL *connection, mysql;
int state;
connection = mysql_real_connect(&mysql,"localhost","username","password","database",0,0,0);
if (connection == NULL)
{
std::cout << mysql_error(&mysql) << std::endl;
return tables;
}
state = mysql_query(connection, "SHOW TABLES");
if (state !=0)
{
std::cout << mysql_error(connection) << std::endl;
return tables;
}
result = mysql_store_result(connection);
std::cout << "tables: " << mysql_num_rows(result) << std::endl;
while ( ( row=mysql_fetch_row(result)) != NULL )
{
tables.push_back(row[0]);
}
mysql_free_result(result);
mysql_close(connection);
return 0;
}
But when I build it I get the error:
error: cannot convert 'std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >' to 'int' in return
and
error: cannot convert 'std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >' to 'int' in return