mikrocontroller.net

Forum: PC-Programmierung Datenbank und c Konsolenanwendung


Autor: Gast1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
kann ich mit einer C konsolenanwendung auf Datenbank zugreifen? soll ich 
erstmal ein ODBC treiber installieren?Falls jemand irgend ein link 
kennt,in dem diese sachen  erklärt ist,kann er mal bitte hier posten?
Danke im Voraus
mfg

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> kann ich mit einer C konsolenanwendung auf Datenbank zugreifen?

Sicher.

> soll ich erstmal ein ODBC treiber installieren?

Kannst Du machen, wenn Du mit Deiner Anwendung via ODBC mit der 
Datenbank kommunizieren willst. Das ist aber nicht bei jeder Datenbank 
erforderlich; es gibt Datenbanken mit einer nativen 
Programmierschnittstelle, die wird i.d.R. in Form von DLLs oder anderen 
Libraries zur Verfügung gestellt.

Was für eine Datenbank isses denn?

Autor: Gast1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist die MySQl.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für MySQL gibt es sowohl native Programmierschnittstellen als auch 
ODBC-Treiber. Für beides findet man im Netz Tonnen von 
Programmierbeispielen.

Willkürlich in 0.3 msec gegoogelte Beispiele

ODBC und C

http://www.easysoft.com/developer/languages/c/odbc...

MySQL C API

http://tecfa.unige.ch/guides/mysql/man/manuel_C.html#C

Autor: Lukas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum.
Habe hier auf einem LPC2378 eine Anwendung laufen. Unter anderem werden 
Datensätze genereriert, die ich gern in eine Datenbank schreiben würde 
(SQL). Diese läuft auf einem Server. Habe nun in mein Projekt TCP 
eingebunden, zu dem Server connecten kann ich auch. Aber hier hört mein 
Latein auf.

Wie kann ich nun über die offene Verbindung dem Server sagen dass ich 
etwas in die Datenbank eintragen möchte? Geht das überhaupt ohne 
Datenbanktreiber auf dem Mikrocontroller? Oder gibt es da irgendwelche 
Bibliotheken die ich in den C Code importieren kann? Weiß grad überhaupt 
nicht weiter.

Schon mal Danke für die Mühe.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hängt vom von Dir verwendeten Datenbankserver ab.
Es gibt DB-Server mit "nativer" Schnittstelle, und es gibt sicherlich 
auch Möglichkeiten, direkt über einen Socket mit so einem DB-Server zu 
kommunzieren. Du müsstest dann komplette SQL-Statements zusammenbasteln 
und an den DB-Server absetzen ...

Einfacher wird es höchstwahrscheinlich, wenn Du auf der Maschine, auf 
der auch der DB-Server läuft, einen skriptfähigen Webserver 
installierst, dann kannst Du mit dem µC HTTP-Requests absetzen, diese 
auf dem Webserver mit der Skriptsprache auswerten und über die 
Datenbankschnittstelle der Skriptsprache in den DB-Server einfüllen. 
Hier bietet sich die Kombination Apache/PHP an, es gibt aber auch noch 
zig andere Möglichkeiten.

Autor: Uwe Berger (boerge) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus t. Firefly wrote:
> Einfacher wird es höchstwahrscheinlich, wenn Du auf der Maschine, auf
> der auch der DB-Server läuft, einen skriptfähigen Webserver
> installierst, dann kannst Du mit dem µC HTTP-Requests absetzen, diese
> auf dem Webserver mit der Skriptsprache auswerten und über die
> Datenbankschnittstelle der Skriptsprache in den DB-Server einfüllen.
> Hier bietet sich die Kombination Apache/PHP an, es gibt aber auch noch
> zig andere Möglichkeiten.
>
bzw., nach meiner Ansicht noch einfacher, einen eigenen Prozess auf dem 
DB-Server schreiben/laufen lassen, der die Daten vom MC entgegen nimmt 
und sie in die Datenbank hämmert. Dies dürfte unkomplizierter sein, als 
http auf dem MC zu implementieren...

Grüße Uwe

Autor: Lukas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Anregungen. Dachte mir schon dass ich wohl nicht um eine 
weitere Applikation auf dem Server herum komme. Schade, denn genau das 
müßte ich umgehen. :(

Autor: Uwe Berger (boerge) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas wrote:
> Schade, denn genau das
> müßte ich umgehen. :(
>
nun, so kompliziert ist es nicht und du mußt auch nicht unbedingt ein 
C-Programm schreiben. Viele Scriptsprachen können auf der einen Seite 
IP-Sockets bearbeiten und bieten auf der anderen Seite Möglichkeiten DBs 
anzusprechen. Ich benutze für solche Singe immer Tcl...

Uwe

Autor: Frank Esselbach (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für ganz hart gesottene gibt es irgendwo auf der MySQL-Webseite auch die 
detaillierte Beschreibung des TCP/IP-Protokolls, so dass man auchg ganz 
nativ arbeiten kann. Ist aber nicht ganz simpel.
Immerhin gibt es bei MySQL diese Infos wenigstens, bei anderen DBs habe 
ich mir da schon die Finger wund gesucht ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.