Jetzt mal die Karten auf den Tisch !

Hallo liebe Experten !

Ich versuche nun schon seit geraumer Zeit mir im Selbststudium etwas Programmieren beizubringen. Bis jetzt in VBC++. Doch irgendwann macht man sich ja auch mal Gedanken darüber, was man mal letztendlich für ein Programm schreiben kann, ausser ewig immer diese Beispielaufgaben in den Büchern zu lösen.

Da dachte ich mir, ich könnte ja mal so ein kleines aber feines Programm schreiben, womit ich meine CD-Sammlung katalogisieren kann. Und da ich auch schon öfters mal was von Datenbanken gelesen habe, dachte ich mir, dass man das dazu ja benutzen könnte.

Nun muss ich aber leider feststellen, dass es ja tatsächlich noch schwieriger ist Dokumentation über Datenbanken zu finden, die wirklich etwas für absolute Anfänger sind, als Dokumentation für Programmiersprachen, die auch Anfänger verstehen können… Und damit meine ich RICHTIGE, TOTALE Anfänger. Leute, die mit den Begriffen SQL, ODBC, relationale Datenbanken, und und und überhaupt nichts anfangen können.

Fangen wir doch einmal bei SQL an. Was ist das eigentlich ? Wo bekomme ich es her ? Gehe ich in einen Laden, und sage :Einmal SQL, bitte, so wie ich dass ja zum Beispiel bei C++ machen kann ? Ich meine ist SQL eine eigene Programmiersprache , die ich mir erst kaufen muss, oder ist die schon irgendwo drin integriert ?

Um noch mal auf meinen Plan mit der CD „Datenbank“ zurückzukommen. Ist das überhaupt sinnvoll so ein Programm mit VBC++ zu schreiben ? Oder anders gefragt : Zu Übungszwecken ist es doch OK, oder ?

Ich hoffe, es gibt unter euch jemanden, der ein Herz für Anfänger hat, der mir wenigstens ein paar Anfängergerechte Hinweise geben kann, wo man denn überhaupt erst einmal anfängt. Oder vielleicht kennt ja jemand von euch ein gutes Buch, dass er mir empfehlen kann.

Vielen Dank schon mal im Voraus

Maik

Fangen wir doch einmal bei SQL an. Was ist das eigentlich ? Wo
bekomme ich es her ?

SQL ist eine Sprachdefinition, ähnlich wie z. B. ANSI C. SQL ist aber keine Programmiersprache im herkömmlichen Sinn sondern eine Abfrage- und manipuliersprache für (relationale) Datenbanken.

So wie du wenn du in ANSI C programmierst noch einen C-Compiler brauchst, brauchst du auch bei SQL ein Datenbanksystem das den Standard implementiert.

Davon gibt es Dutzende, von der Einplatz-Datenbank bis zu großen Datenbankservern. Für den Anfang wäre Microsoft Access zu empfehlen, hat eine einfache Oberfläche und man kann damit schon was über die Grundprinzipien von relationalen Datenbanken lernen.

In Access ist eine eigene Programmiersprache für Anwendungen inkludiert, und zwar VBA (Visual Basic for Applications). Üblicherweise sind Datenbankanwendungen aber in „herkömmlichen“ Programmiersprachen (VB, C++, Java) geschrieben, die meisten Datenbanksysteme bieten keine integrierte Umgebung für grafische Anwendungen.

In diesem Fall benötigst du dann noch eine entsprechende Zugriffsschicht (z. B. ADO für VB/C++, JDBC für Java) die dir aus der Programmiersprache heraus den Zugriff auf die Datenbank ermöglicht. Du schickst dann über diese Zugriffsschicht aus der Programmiersprache heraus SQL-Befehle an die Datenbank und bekommst dann Ergebnisse zurück.

Bei weiteren Fragen, einfach nochmal nachhaken. :smile:

Grüße, Robert

Hallo!

Fangen wir doch einmal bei SQL an. Was ist das eigentlich ? Wo
bekomme ich es her ?

SQL ist eine standardisierte Abfragesprache, mit man auf Daten aus relationalen Datenbanken zugreifen kann.

Ich meine ist SQL eine eigene Programmiersprache , die
ich mir erst kaufen muss, oder ist die schon irgendwo drin
integriert ?

Wenn Du eine relationale Datenbank hast, dann kann die auch SQL.

Um noch mal auf meinen Plan mit der CD „Datenbank“
zurückzukommen. Ist das überhaupt sinnvoll so ein Programm mit
VBC++ zu schreiben ?

Ja, wenn Du VBC++ kannst, spricht nichts dagegen damit und in Verbindung mit einer Datenbank Deine CD-Sammlung zu programmieren.

Ich hoffe, es gibt unter euch jemanden, der ein Herz für
Anfänger hat, der mir wenigstens ein paar Anfängergerechte
Hinweise geben kann, wo man denn überhaupt erst einmal
anfängt.

Für den Anfang empfiehlt es sich, einfach mal mit Acces zu beginnen. Unter http://members.tripod.com/~accessbuch gibt es ein einfaches Tutorial für Einsteiger.

Oder vielleicht kennt ja jemand von euch ein gutes
Buch, dass er mir empfehlen kann.

SQL in 21 Tagen gibts auch online unter: http://home.t-online.de/home/t.brand/helpline/ebooks…

weitere SQL-Tutorials:
http://dblabor.f4.fhtw-berlin.de/morcinek/sqltutor/
http://print-www.informatik.uni-hamburg.de/Dokumenta…
http://www.hrz.uni-dortmund.de/Kurse/DB-Docs/SQLOrac…

Einführung in Datenbanken:
http://www.muenchen.roses.de/~kelz/rdbms/index.htm

Grüße, Tanja

Hi Maik,

es gibt eine einfache, sehr leicht zu lernende Datenbank: FileMaker. FileMaker liegt in vielen Tests vor Access (Habe auch damit angefangen), aus dem einfachen Grund, dass Du ohne Vorkenntnisse z.B. Deine CD-Datenbank erstellen kannst. Selbst bei 1.000.000 Datensätze läuft FileMaker noch stabil und sehr perfomant.
Infos unter www.filemaker.de oder www.filemaker-magazin.de

Gruß

Peter

Hallo ihr Drei !

Vielen Dank erst einmal für eure Antworten.
Wenn ich das also richtig verstanden habe, dann bastle ich mir zum Beispiel mit Access eine Datenbank, und kann dann über VBC++ darauf mit Hilfe von SQL Befehlen zugreifen, ja?
Das bedeutet, dass C++ diese SQL Befehle verstehen kann. Dafür muss ich doch bestimmt eine Header Datei einbinden, damit das klappt, oder ? Welche ist denn das dann ?

Irgendwie komme ich mir ja schon wie ein Trottel vor, da das scheinbar für euch das natürlichste der Welt ist, Datenbanken zu programmieren.

Mein grösstes Problem sind in den Tutorials, dass sie ja nur SQL beschreiben, aber nicht, wie man es konkret mit einer Programmiersprache anwendet.(z.B. VBC++ …)
Gibt es da vielleicht nicht doch ein Buch drüber ?
Ich habe schon ein Buch vom M&T Verlag, wo ganz kurz einmal angerissen wird, wie man mit Hilfe eines VBC++ Programms auf eine Access Datenbank zugreift. Allerdings hört das Buch dort auf, wo es gerade interessant wird. Nämlich beim Erweitern, Löschen, und Suchen von Daten in der Datenbank. Ich kann mir mit Hilfe des Programms nämlich nur die Daten anschauen, die ich vorher in Access eingegeben habe. Wäre das jetzt der Punkt, wo man anfängt mit SQL Befehlen zu arbeiten ?

Ich würde mich echt freuen, wenn ihr noch mal die Zeit findet, mir auf diese Fragen zu antworten.

Danke !
Maik

Das bedeutet, dass C++ diese SQL Befehle verstehen kann. Dafür
muss ich doch bestimmt eine Header Datei einbinden, damit das
klappt, oder ? Welche ist denn das dann ?

Ja, und zwar benötigst du unter VC++ die ADO (ActiveX Data Objects, kommt von Microsoft). Gibt auch andre Möglichkeiten, aber das ist IMHO die einfachste.

Am besten suchst du mal in einer Suchmaschine nach „C++ ADO Tutorial“ oder so, da findest du sicher tonnenweise Hilfe.

Außerdem könntest du mal direkt auf http://msdn.microsoft.com gehen und dort nach ADO suchen, da gibts auch einiges.

Grüße, Robert

Hallo Maik,

es gibt in Access auch die Möglichkeit Abfragen zu erstellen, diese Abfragen kannst du in verschiedenen Anschichten anzeigen lassen. Standard ist die grafische, in einer Ansicht bekommst du den SQL-String. Am besten kannst du zwei Datenbanken aufbauen, in der einen sind nur Daten und in der anderen ist der Eingabe/Bearbeitung/Ausgabe-teil. In der Access-Hilfe ist so einiges zum Thema SQL beschrieben. Die Datenbank mit den Daten kannst du so einfach auf einen SQL-Server protieren, und den Programmteil kannst so einfacher mit einer Programmierprogramm nachbilden. Du kannst auch mit VBA die SQL-Befehle in eine Access-Datenbank einbinden.

so long yeTTi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]