C++ e MySQL++

5 settembre 2009

Per poter utilizzare la libreria MySQL++ su ubuntu è necessario installare i seguenti pacchetti:

– libmysql++2c2a
– libmysql++-dev

per la compilazione bisogna eseguire la riga:

g++ file_inp.cpp -o file_out -I/usr/include/mysql++/ -I/usr/include/mysql -L/usr/local/lib -lmysqlpp -lmysqlclient -lnsl -lz -lm

L’ho provato sul seguente codice:


#include <mysql++.h>
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char *argv[])
{
const char *db = "nome_database", *server = "server_db", *user = "nome_utente", *pass = "password";
// Connect to the sample database.
mysqlpp::Connection conn(false);

conn = conn.connect(db, server, user, pass);

// Retrieve a subset of the sample stock table set up by resetdb
mysqlpp::Query query = conn.query();
query << “select item from cliente”;
mysqlpp::Result res = query.store();
// Display the result set
cout << “We have:” << endl;
if (res) {
mysqlpp::Row row;
mysqlpp::Row::size_type i;
for (i = 0; row = res.at(i); ++i) {
cout << ‘\t’ << row.at(0) << endl;
}
}
else {
cerr << “Failed to get item list: ” << query.error() << endl;
return 1;
}
return 0;
}

In caso di problemi rimando a

http://tangentsoft.net/mysql++/
e
http://tangentsoft.net/mysql++/doc/

http://www.cyberciti.biz/tips/linux-unix-connect-mysql-c-api-program.html


C e MySQL

5 settembre 2009

E’ necessario installare il seguente pacchetto libmysqlclient15-dev:

sudo apt-get install libmysqlclient15-dev

e seguire i passi qui descritti:

http://www.cyberciti.biz/tips/linux-unix-connect-mysql-c-api-program.html

Per la compilazione usare la riga: gcc -o file_out $(mysql_config --cflags) file_in.c $(mysql_config --libs)


C++ e MySQL

5 settembre 2009


// connette a mysql e stampa la prima colonna della tabella selezionata;
#include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
#include <iostream>

using namespace std;

const char* host = “localhost”; // host di connessione
const char* database = “nome_database”; // database di connessione
const char* db_user = “nome_utente”; // nome utente per la connessione
const char* db_pass = “password”; // password non cifrata
const char* query = “select * from cliente”; //comando

int main()
{
MYSQL mysql;
MYSQL_RES* result;
MYSQL_ROW row; // restituisce NULL se non avviene con successo
if (! mysql_init (&mysql)) {
printf (“Errore nella allocazione di memoria.\n”);
exit (EXIT_FAILURE);
}
if (! mysql_real_connect (&mysql, host, db_user, db_pass, “”, 0, NULL, 0))
{
printf (“Errore nella connessione.\n”);
exit (EXIT_FAILURE);
}// restituisce zero se avviene con successo
if (mysql_select_db (&mysql, database))
{
printf (“Errore nella selezione del database.\n”);
exit (EXIT_FAILURE);
}
printf (“Connessione avvenuta.\n”); // esegue la query
if (mysql_query (&mysql, query))
{
printf(“Errore nella query.\n”);
goto error;
}
result = mysql_store_result (&mysql);
cout << “Codice cliente\t” << “Partita IVA\t” << “Ragione sociale\n”;
cout << “———————————————–\n”;
while(( row = mysql_fetch_row(result)) != NULL)
{
cout << row[0] << “\t” << row[1] << “\t” << row[2] << endl;
}
cout << endl;
error:// chiude le risorse
mysql_close (&mysql);
exit (EXIT_SUCCESS);
}

Per compilare si deve usare:

g++ -o file_out $(mysql_config --cflags) file_in.cpp $(mysql_config --libs)

Per utilizzare il MySQL++ non sono ancora riuscito a farlo funzionare, comunque lascio dei riferimenti:

http://forge.mysql.com/wiki/Connector_C%2B%2B
http://dev.mysql.com/tech-resources/articles/mysql-connector-cpp.html
http://tangentsoft.net/mysql++/doc/html/refman/
http://tangentsoft.net/mysql++/doc/html/userman/
http://tangentsoft.net/mysql++/


I linguaggi di programmazione più utilizzati

9 aprile 2009

Oggi ho voluto fare una ricerca su quali fossero i linguaggi di programmazione più utilizzati nel mondo e secondo la TIOBE Software ad Aprile 2009 domina il Java, seguito da C e C++.

  1. Java
  2. C
  3. C++
  4. PHP
  5. (Visual) Basic
  6. Python
  7. C#
  8. JavaScript
  9. Perl
  10. Ruby

Per visitare la classifica completa seguite questo link.

Per una classifica degli script utilizzati nel web dalle pubbliche amministrazioni notiamo che al secondo posto troviamo ASP.NET, seguito dal PHP:

  1. Non definito          50.82%      con 3706 hit su 7291
  2. ASP.NET               23.43%      con 1708 hit su 7291
  3. PHP                     16.91%      con 1233 hit su 7291
  4. Servlet                   0.37%      con 27 hit su 7291
  5. JSP                       0.04%       con 3 hit su 7291

Da considerare anche che quanto scritto su TIOBE:

ASP and ASP.NET are not programming languages because they make use of other languages such as JavaScript and VBScript or .NET compatible languages.

ASP e ASP-NET non sono considerati linguaggi di programmaizone perché fanno uso di altri linguaggi come JavaScript e VBScript o linguaggi compatibili con .NET.

Per quanto riguarda i servers abbiamo:

  1. Apache           43.56%    con 3176 hit su 7291
  2. Microsoft IIS   29.68%    con 2164 hit su 7291
  3. Altro              18.78%    con 1369 hit su 7291
  4. Non definito     7.98%    con   582 hit su 7291

Sono stati sommati i risultati di tutte le pubbliche amministrazioni e prese le percentuali sul totale.

I riferimenti sono stati presi da http://web-pa.tektank.it/.