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

[C++ CLI] Jak wyciągnąć dane z bazy danych mysql?

Ostatnio zmodyfikowano 2012-08-27 01:14
Autor Wiadomość
Patrick
Temat założony przez niniejszego użytkownika
[C++ CLI] Jak wyciągnąć dane z bazy danych mysql?
» 2012-08-26 22:40:47
Witam

Jest to mój pierwszy post a już piszę z problemem :P.

oto mój kod:


                                 //tworzenie zapytania
System::String^ stats_query = "SELECT `StanKonta` from `users` WHERE `Login` = '";
stats_query += login_gracza->Text;
stats_query += "' ;";

const char* stats_query_real;

//konwersja na odpowiedni typ
marshal_context ^context = gcnew marshal_context();
stats_query_real = context->marshal_as<const char*>(stats_query);

//zapytanie do bazy
mysql_real_query(conn,stats_query_real,400);

MYSQL_RES* res = mysql_store_result(conn);
MYSQL_ROW row = mysql_fetch_row(res);

I teraz moje pytanie to jak otrzymany rezultat przekonwertować, abym mógł go wyświetlić w textbox'ie.
P-63696
DejaVu
» 2012-08-26 23:25:18
Ten kod nie jest z C++ (to chyba C++ CLI) - skąd żeś taki kod wytrzasnął??
Frazy, które należy wpisać w wyszukiwarkę google:

/edit:
http://dev.mysql.com/doc/refman/5.1/en/connector-cpp-examples-complete-example-1.html
P-63697
Patrick
Temat założony przez niniejszego użytkownika
» 2012-08-26 23:58:09
Tak, jest to C++ CLI, kod pisałem sam posiłkując się różnymi dokumentacjami. W tym języku piszę dopiero od jakichś 2 tygodni.

/edit:

link który podałeś mi nie pasuje, ja korzystam z tego:
http://dev.mysql.com/doc/refman/5.5/en/c.html

Nie pytaj dlaczego, po prostu kod mi przypasował i korzystam, musi być jakiś sposób, aby wyciągnąć dane z bazy.
P-63701
DejaVu
» 2012-08-27 00:05:23
P-63702
Patrick
Temat założony przez niniejszego użytkownika
» 2012-08-27 00:19:32
Co do pierwszego linku to już to analizowałem i niestety nie mam rozwiązania mojego problemu, drugi link to mój post na innym forum.
Nie istnieje jakiś sposób konwersji z MYSQL_RES do System::String przykładowo?
P-63703
DejaVu
» 2012-08-27 00:22:05
Eeee? Przecież tam masz literalnie rozwiązanie podane...

C/C++
MYSQL_ROW row;
unsigned int num_fields;
unsigned int i;

num_fields = mysql_num_fields( result );
while(( row = mysql_fetch_row( result ) ) )
{
    unsigned long * lengths;
    lengths = mysql_fetch_lengths( result );
    for( i = 0; i < num_fields; i++ )
    {
        printf( "[%.*s] ",( int ) lengths[ i ],
        row[ i ] ? row[ i ]
            : "NULL" );
    }
    printf( "\n" );
}
P-63704
Patrick
Temat założony przez niniejszego użytkownika
» 2012-08-27 00:26:52
tylko ta funkcja  printf(); mi nie pasuje. Ona zwraca wartość 'int', a ja bym chciał to w stringu.
P-63705
DejaVu
» 2012-08-27 00:48:07
No to ja Ciebie podsumuję tak: nie znasz podstaw programowania (» standard Cprintf).

C++ CLI nie jest dla amatorów.
P-63706
« 1 » 2
  Strona 1 z 2 Następna strona