Adressbuch

Werbung:
Das INSERT 0 1 ist die Antwort meiner Datenbank auf meinen Befehl. Das war ein INSERT, die 0 ist die OID, da die Tabelle ohne OID erstellt wurde ist die OID halt 0, und die 1 steht für '1 Datensatz'.

Oder anders formuliert: die DB hat mir bestätigt, daß sie meinen Befehl ausgeführt hat. Ist doch nett, oder?
 
@akretschmer: In meinem Programm werde ich so einige Datenbanken einbauen, eher die Verbindungen und Handhabungen. Mein Programm soll also in der Lage sein, dass ein Anwender meines Programm sich aussuchen kann ob er mit MS Access, SQLite, MySQL, PostGreSQL oder MS SQL arbeiten möchte. Aber dazu später, und da werde ich euch noch früh genug mit ärgern, wenn es darum geht die einzelnen Strukturen zu besprechen :)
 
Dieses Ziel ist zwar nett, aber in der Realität nicht gescheit umsetzbar. Um das zu machen, mußt Du vom Umfang dessen, was alle Systeme können, den kleinsten gemeinsammen Nenner verwenden. Ich hab da schon ganz furchtbare Dinge gesehen, das Resultat wird sein, daß es dann mit allen DB-Systemen einfach nur Scheiße laufen wird, weil Du von keinem System dessen Vorteile nutzen kannst.

Ich hab Dich gewarnt.
 
Auch wenn ich jetzt auf Distrilecs Antwort warte, und mich sehr stark an DIA gewöhnt habe, so habe ich gerade ein ERD gefunden namens DBDesigner4. Man kann dann die visuell erstellten Modelle in eine SQL-Script-Datei (*.sql) exportieren lassen, und ich kann diese dann euch zur Verfügung stellen. Ich denke, damit könnt ihr dann rumbasteln und mir Lösungsvorschläge geben?
 
Für welche SQL-Dialekte geht das denn? Kannst Du da so Dinge wie

  • funktionale Indexe
  • exclusion constraints
  • range - Datentypen
  • Partitionierung
  • Trigger
  • ...

definieren?

Mit anderen Worten:

ich gehe davon aus, daß man mit solchen Tools nur einen ganz winzigen Bruchteil der Möglichkeiten leistungsfähiger Datenbanken nutzen kann.

Aber, wie schon gesagt: wir werden sehen.
 
Ich bin ehrlich gesagt überfordert mit deiner Frage. Daran erkenne ich auch, dass ich in der Materie der Datenbank nicht fest genug bin. Liegt auch daran, dass ich die Datenbank eher stiefmütterlich behandel. Aber irgendwie scheint das Tool DBDesigner4 nicht meinen Geschmack zu treffen. Nirgendwo kann ich zum Beispiel einstellen, dass zum Beispiel eine Zeile mit VAR eine bestimmte Länge haben soll. Also die Einstellmöglichkeiten sind sehr eng gefasst. Welches, kostenloses Toll würdest du mir für ein UML vorschlagen? Mir geht es zunächst einmal um MySQL. Aber die meisten Tools betten ja auch PostGreSQL, MS SQL, MySQl und Oracel mit ab.
 
Ich habe jetzt mal eine Person-Tabelle mit dem Tool angelegt, udn daraus ein SQL-Skript generieren lassen.

Code:
CREATE TABLE Person (
  Person_ID CHAR NOT NULL DEFAULT 32,
  KuenstlerVorname VARCHAR BINARY NULL DEFAULT 200,
  KuenstlerNachname VARCHAR NULL DEFAULT 50,
  Rufname VARCHAR NOT NULL DEFAULT 200,
  Nachname VARCHAR NULL DEFAULT 50,
  Geburtsdatum DATETIME NULL,
  Todesdatum DATETIME NULL,
  PRIMARY KEY(Person_ID)
)
TYPE=ISAM;

Irgendwie bin ich damit nicht zufrieden. Und was bedeutet ISAM?
 
Werbung:
BRAIN 1.0

Ist von Geburt an installiert und aktualisiert sich täglich automatisch.


Du solltest Dir echt die Unterschiede zwischen den einzelnen Systemen anschauen, aber Du haderst schon mit Grundbegriffen wie DDL. Mein Ratschlag: mach erst mal was einfaches. Mache das händisch, indem Du die SQL-Befehle direkt in eine Datei schreibst und ausführst oder interaktiv in einer passenden Shell einer DB eingibst. Und lese mal Dokus zu den Systemen, die Du einsetzen willst.

Versuch, ein und dasselbe SQL-Script auf versch. Systemen laufen zu lassen. Probiere mal Dinge wie Check-Constraints aus und beobachte, wie unterschiedliche Systeme darauf reagieren. Versuch mal mit einfachen DDL-Befehlen z.B. eine automatisch hochzählende Spalte zu erzeugen, versuch zu erreichen, daß Du 2 oder mehr Tabellen mit so einer Spalte hast und über alle Tabellen der Wert einzigartig ist. Erstelle Tabellen mit Primary Key / Foreign Key - Restriktionen. Schaue Dir an, wie die Abfragen laufen mit 1, 10, 100 und 100000000 Zeilen.

Erst wenn Du ein Minimalgefühl dafür hast, wie Datenbanken funktionieren, dann kannst Du mit solchen 'Tools' mal spielen.
 
Zurück
Oben