Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

C++ / MySql

Empfohlene Antworten

Veröffentlicht

moin

ich suche nen vernünftiges tutorial welches mir die connection von einem c++ konsolenprogramm zu einer mysql db beschreibt ..

wenn ihr wisst wie es geht könnt ihr das natürlich auch schreiben

mfg LordTerra

hmmm hilft mir net wirklich weiter...

will kein mysql++ sondern normales mysql

thx für hilfe

edit:

#include <stdio.h>

#if defined __WIN32__ || _MSC_VER

#include <windows.h>

#endif

#include <mysql.h>

int main (int argc, char *argv[])

{

MYSQL *my;

my = mysql_init(NULL);

if(my == NULL)

{

fprintf(stderr, " Initialisierung fehlgeschlagen\n");

exit (0);

}

if( mysql_real_connect ( my, 172.0.0.1, root, ***, avs, 0, NULL, 0) == NULL)

{

fprintf (stderr, "Fehler mysql_real_connect():"

"%u (%s)\n",mysql_errno (my), mysql_error (my));

}

else

printf("Erfolgreich mit dem MySQL-Server verbunden\n");

mysql_close (my);

getchar();

return 0;

}

^^ soweit bin ich mittlerweile nur bringt er mit noch ne fehlermeldung:

d:\ws\c++\db3\db3\db3\db3.cpp(41) : fatal error C1010: Unerwartetes Dateiende waehrend der Suche nach der Direktive für die vorkompilierte Headerdatei

Fehler beim Ausführen von cl.exe.

ich hab die mysql.h aus dem installierten mysql ordner in meinen quellcode ordner gepackt weil er die datei vorher net gefunden hat... und ich kein plan hab wo ich hier sowas wie nen classpath einricht

hmmm also die seite hatte ich auch schon gefunden und durchgelesen aber so wirklich auskunft gibt die auch net ...

wo soll ich denn nun die mysql.h her nehmen aus dem installierten mysql ordner oder wie oder was? und soll ich nun noch irgendwo nen pfad setzen oder is der durch die installation schon gesetzt´?

#include <stdio.h>

#include <stdlib.h>

#include <windows.h>

#include "D:/MySQL/MySQL Server 5.0/include/mysql.h"

int main (int argc, char *argv[])

{

MYSQL *my;

/* Handle initialisieren */

my = mysql_init(NULL);

if(my == NULL){

fprintf(stderr, " Initialisierung fehlgeschlagen\n");

exit (0);

}

/* Mit dem Server verbinden */

if( mysql_real_connect (my, "localhost", "root", "***", "avs", 0, NULL, 0) == NULL){

fprintf (stderr, "Fehler mysql_real_connect():""%u (%s)\n",mysql_errno (my), mysql_error (my));

}else{

printf("Erfolgreich mit dem MySQL-Server verbunden\n");

}

/* Hier befindet sich der Code für die Arbeit mit MySQL */

/* Verbindung trennen */

mysql_close (my);

getchar();

return 0;

}

^^ok soweit sogut...

bei der Kompilierung 0 fehler...

beim ausführen:

Linker-Vorgang läuft...

db4.obj : error LNK2001: Nichtaufgeloestes externes Symbol _mysql_close@4

db4.obj : error LNK2001: Nichtaufgeloestes externes Symbol _mysql_errno@4

db4.obj : error LNK2001: Nichtaufgeloestes externes Symbol _mysql_error@4

db4.obj : error LNK2001: Nichtaufgeloestes externes Symbol _mysql_real_connect@32

db4.obj : error LNK2001: Nichtaufgeloestes externes Symbol _mysql_init@4

Debug/db4.exe : fatal error LNK1120: 5 unaufgeloeste externe Verweise

Fehler beim Ausführen von link.exe.

db4.exe - 6 Fehler, 0 Warnung(en)

... was ist ein Nichtaufgeloestes externes Symbol ???

Hi,

also evtl. solltest du dich mal mit den Grundlagen beschäftigen, statt gleich so Dinge wie die MySQL-Programmierung anzugehen.

Ein nichtaufgelöstes Symbol bedeutet in etwa, dass die in der mysql.h deklarierte Funktion nicht gefunden wird, da dein Linker die entsprechende Library nicht findet. Wie und wo du das konfigurierst, weiss ich nicht. Das muss du irgendwo in deinen Projekteinstellungen machen.

Übrigens programmierst du reines C, und kein C++!

... was ist ein Nichtaufgeloestes externes Symbol ???

die in mysql.h deklarierte funktion ist in der library nicht vorhanden, deshalb findet sie der linker nicht.

wo soll ich denn nun die mysql.h her nehmen aus dem installierten mysql ordner oder wie oder was? und soll ich nun noch irgendwo nen pfad setzen oder is der durch die installation schon gesetzt´?

die verwendete mysql.h muss zur verwendeten libmysql (auf der windowsplattform in form einer DLL, auf linuxoiden systemen gerne als .so entdeckt) passen. die erst bietet bietet die funktionen an.

und ich kein plan hab wo ich hier sowas wie nen classpath einricht

die mysql-bibliothek muss in den entsprechenden projekteinstellungen dem linker mitgeteilt werden. CLASSPATH betrifft eher java-anwendungen.

du solltest dich auch auf die nomenklatur einigen - einerseits schreibst du C++, dann wieder klassisches C.

s'Amstel

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.