C++ is a very good programming language with high-level and low-level capabilities.
Linux is a Unix-like computer operating system. It promotes community of free and open source software. Almost using those instruments it is possible to make a complex and sophisticate enterprise system.
MySQL is a multithreaded, multi-user SQL database management system. It is a popular database system, which has more than 10 million installations.
In this article is shown how to connect to a MySQL database using C++ under a Linux operating system.
First of all we include all needed libraries:
Now we declare main function:
int main(char **args)
Next, we declare all necessary variables:
MYSQL *connection, mysql;
Of course if we want to use MySQL database, we must connect to it, using the next code:
connection = mysql_real_connect(&mysql,host,usr,pswd,database,0,0,0);
host – is a host name, the location of the MySQL database server, for example “localhost” or “remotehost.com”
usr – is the username
pswd – is the password
database – is the name of the MySQL database from the Host.
If something goes wrong, for example password is not right, we must know it, and display the error message:
if (connection == NULL)
Now we make a simple query like “SELECT * FROM mytable” and check if it has no errors, where “mytable” is the name of wished table:
state = mysql_query(connection, “SELECT * FROM mytable”);
if (state !=0)
After the successful execution of the query, we must store the results somewhere:
result = mysql_store_result(connection);
Using mysql_num_rows function, we can get number of rows from result:
Using while statement and mysql_fetch_row functions, it possible to process each row in the result set:
while ( ( row=mysql_fetch_row(result)) != NULL )
printf(” %s, %s\n”, (row ? row : “NULL”), (row ? row : “NULL” ));
At the end, we must free the memory:
IMPORTANT!!! How to make this code under Linux?
g++ test.cpp -I/usr/include/mysql /usr/lib/mysql/libmysqlclient.so