Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] Bazy danych SQL

Ostatnio zmodyfikowano 2010-06-20 22:27
Autor Wiadomość
Nadejf
Temat założony przez niniejszego użytkownika
[C++] Bazy danych SQL
» 2010-06-20 21:59:49
Witam czy mógłby ktoś mi podać jak można C++ łączyć z SQL? Chodzi mi o to jak się łączyć, jak wykonywać zapytania, jak dodawać nowy rekord do tabeli, kasować, uaktualniać, pobierać. Jeśli coś z tego jest identyczne jak w MySQL może być opisane tylko króciutko bo MySQL znam. Z góry dziękuje za wszystkie mądre odpowiedzi.
P-18194
markon
» 2010-06-20 22:06:38
Istnieje taka biblioteka SQLite.
znając SQL'a spokojnie sobie poradzisz, dokumentacja jest również bardzo dobra
http://www.sqlite.org/
P-18195
malan
» 2010-06-20 22:07:01
Akurat pod ręką mam:
C/C++
#include <SQLite/sqlite3.h>
#include <iostream>

static int SQLite_Records( void * NotUsed, int argc, char ** argv, char ** ColumnName )
{
    for( int i = 0; i < argc; i++ )
         std::cout << ColumnName[ i ] << " = " <<( argv[ i ] ? argv[ i ]
        : "NULL" ) << std::endl;
   
    std::cout << std::endl;
    return 0;
};

static int SQLITE_Count( void * NotUsed, int argc, char ** argv, char ** ColumnName )
{
    std::cout << "Ilosc rekordow: " << argc << std::endl;
    std::cout << ColumnName[ 0 ] << " = " <<( argv[ 0 ] ? argv[ 0 ]: "NULL" ) << std::endl;
    std::cout << std::endl;
    return 0;
};

int main( int argc, char * argv[] )
{
    if( argc > 1 ) return 1;
   
    sqlite3 * hBase;
    char * SQLite_err = 0;
    int result = 0;
   
    if( !sqlite3_open( "myBase.dat", & hBase ) )
    {
        sqlite3_exec( hBase, "CREATE TABLE students (id INTEGER PRIMARY KEY, name text, sername text, class text);", NULL, 0, & SQLite_err );
        sqlite3_exec( hBase, "INSERT INTO 'students' VALUES(NULL, 'Jan', '2', 'IA');", NULL, 0, & SQLite_err );
        sqlite3_exec( hBase, "INSERT INTO 'students' VALUES(3, 'Jan', 'Janek', 'IIIA');", NULL, 0, & SQLite_err );
        sqlite3_exec( hBase, "INSERT INTO 'students' VALUES(4, 'Ćme', 'Mam', 'VIZ');", NULL, 0, & SQLite_err );
        sqlite3_exec( hBase, "SELECT* FROM students;", SQLite_Records, 0, & SQLite_err );
       
        sqlite3_exec( hBase, "SELECT COUNT(*) FROM 'students';", SQLITE_Count, 0, & SQLite_err );
        std::cout << sqlite3_errmsg( hBase ) << std::endl;
        sqlite3_close( hBase );
    }
   
    return 0;
};
Jednym słowem- SQLite :)
P-18196
Nadejf
Temat założony przez niniejszego użytkownika
» 2010-06-20 22:19:14
Ta biblioteka wydaje mi się bardziej skomplikowana niż MySQL w PHP. Dziękuje za odpowiedzi. Znalazłem też SQLAPI ale widzę, że nie darmowa.
P-18200
michalp
» 2010-06-20 22:27:43
@up: Bo to C++, nie dziw się.
P-18201
« 1 »
  Strona 1 z 1