Hallo Klaus-Jürgen, *, > > Ich habe hier, privat und in meiner Arbeit schon über viele Experten > gelesen und gehört. Meist war es heiße Luft und wenig Ergebnis, was > dabei produziert wurde.
Genau das habe ich auch erlebt - mit der OpenOffice Liste, wo sich viele zusammen tun wollten, um eine vernünftige Beispieldatenbank auf die Beine zu stellen. Tolle Diskussionen, nur kam nichts bei rum. Ich habe die Vereinsdatenbank schließlich erstellt und online verfügbar gemacht: http://robert.familiegrosskopf.de > > Wäre schön, wenn wir die Fehler vorher wissen könnten. Ich habe jeden > Schritt in LibreOffice nachvollzogen, das Kapitel übersetzt und ins Wiki > gestellt. Natürlich wäre das besser gewesen - nur habe ich erst Ende Juli überhaupt davon etwas mitbekommen, dass an einer Dokumentation gearbeitet wurde. > Es hilft nichts, wenn ein Experte in Dokumenten rumfummelt, sein Wissen > aber nicht auch weiter gibt und ggf. auch mal diskutiert. Sonst > funktioniert keine Cmmunity. Auch wenn es recht lang ist (im Writer 2 Seiten) gebe ich hier jetzt wieder, was mir an den ersten Seiten im Wiki aufgefallen ist (Das *.odt-Dokument war leider nicht downloadbar bzw. defekt): --------------------------------------------------------- Korrekturen zu Base-Einführung Original: LibreOffice Base verwendet die HSQL Datenbank-Engine (Hyper Structured Query Language). Alle Dateien, die von dieser Engine erzeugt werden, werden in einer ZIP-Datei gespeichert. Die Datenbankstruktur ist in dieser ZIP-Datei enthalten. Anmerkung: Alle Dateien unter LibreOffice sind keine ZIP-Dateien sondern Java-Archive. Das Windows-Programm ZIP kann diese öffnen, weil es den entsprechenden Filter eingebaut hat. Original: Eine Datenbank besteht aus einer Reihe von Feldern, die einzelne Teile der Daten enthalten. Anmerkung: Eine Datenbank besteht erst einmal aus Tabellen, die wiederum aus Feldern bestehen. Original: Eine Abfrage erstellt eine neue Tabelle aus den vorhandenen Tabellen Anmerkung: Eine Abfrage erstellt keine neue Tabelle, sondern eine bestimmte Ansicht der Daten. Die fest eingebaute Abfrage in der Datenbank selbst wird deshalb als „View“ bezeichnet. Original: Die mit Windows mitgelieferte Version von JRE kann nicht verwendet werden. Anmerkung: Nicht nur bei Windows kann es mit JRE Probleme geben. Unter Linux läuft die Datenbank seit dem Update 6u23 gähnend langsam. Die 6u22 ist da die beste Wahl. Quelle: http://www.oracle.com/technetwork/java/archive-139210.html Original: Eine Datenbank für eine Bibliothek wird ein Feld für den Namen der Autoren und ein weiteres Feld für die Namen der Bücher enthalten. Es gibt einen offensichtlichen Zusammenhang zwischen den Autoren und Bücher, die sie geschrieben haben. Die Bibliothek kann mehr als ein Buch desselben Autors enthalten. Dies ist als eine Eins-zu-viele-Beziehung bekannt: ein Autor und mehr als ein Buch. Die meisten, wenn nicht alle Beziehungen in einer solchen Datenbank sind Eins-zu-viele Beziehungen. Anmerkung: Das obige Beispiel hinkt: Es gibt gerade bei Büchern viele n:m-Beziehungen, denn nicht gerade selten schreiben mehrere Autoren an einem Buch. Eine 1:n-Beziehung ist im Bibliothekswesen z.B. die zwischen Verlag und ISBN-Nummern. Einfacher ist ein Beispiel wie Klassen in der Schule und SchülerInnen, da keine SchülerIn in 2 Klassen gleichzeitig sein kann. Original: Eine Datenbank zur Verwaltung von Beschäftigten enthält Felder für die Namen der Mitarbeiter, für die Sozialversicherungsnummern und für andere persönliche Daten. Die Beziehung zwischen dem Namen und Sozialversicherungsnummern ist Eins-zu-Eins: nur einen Namen für jede Sozialversicherungsnummer. Anmerkung: Auch dieses Beispiel hinkt: Es ist nicht der Name, sondern der bestimmte Mitarbeiter. Wir haben ohne weiteres SchülerInnen mit gleichem Vor- und Nachnamen. Die darf es für das Beispiel nicht geben. Es ist also eine Beziehung zwischen der bestimmten Person und der Versicherungsnummer. Original: Abbildung 1: Startbildschirm Datenbank-Assistenten Anmerkung: In dieser Abbildung wird der Start einer bestehenden Datenbankdatei gezeigt, nicht die Gründung einer neuen. Original: Hinweis Wenn die Datenbank nicht registriert wird, steht sie in den anderen LibreOffice-Komponenten wie Writer oder Calc nicht zur Verfügung. Wenn die Datenbank registriert ist, können andere Komponenten darauf zugreifen. Anmerkung: Weiter unten ist die Registrierung beschrieben. Deswegen hier ergänzen, dass die Registrierung natürlich auch später erfolgen kann. Ich lasse eine Datenbank z.B. grundsätzlich erst einmal nicht registrieren ... Original: Es öffnet sich das LibreOffice Base-Fenster mit automobil.odp. Abbildung 2 zeigt dieses Fenster. Anmerkung: Hier sind gleich 2 Fehler enthalten, die sich weiter unten wiederholen. Die Abbildung zeigt „Automobil.odb“. Original: Base verwendet VCHAR als Feldformat für Textfelder. Anmerkung: Das Feldformat heißt VARCHAR (für varibale Buchstabenanzahl, variable characters). Original: Format: Ändern Sie die Einstellung „Eintrag erforderlich“ von Nein auf Ja. Anmerkung: Das hat nichts mit dem Format zu tun. Die Überschrift für diesen Teil ist „Feldeigenschaften“. Das unten wählbare Format hat nichts mit den abgespeicherten Daten zu tun. Es ist eine Zugabe der Benutzeroberfläche, die z.B. aus Ziffern mit 2 Nachkommastellen schließlich in den Tabellen €-Beträge macht. Deswegen kann das Format ohne weiteres auch nachträglich ohne Probleme geändert werden. Original: Liederzahl: Ändern Sie den Feldtyp auf Tiny Integer [TINYINT]. Ihre zulässige Anzahl der Titel wird 999 sein. Kleine Integer [SMALLINT] erlaubt 99999 Titel. Anmerkung: TINYINT hat eine Größe von 1 Byte, d.h. 28 = 256 mögliche Zahlen. Der Wertebereich geht also von 0 bis 255 (oder von -128 bis 127). Bei SMALLINT sind es 2 Bytes, also insgesamt 216 = 65536 Zahlen. Die GUI unter Base schweigt sich hier bewusst über die Größe aus, da den meisten Nutzern das Binärsystem nicht geläufig ist (obwohl sie vor dem PC sitzen und schon öfter über die irritierende Reihenfolge 256 – 512 – 1024 – 2056 – 4112 … gestolpert sind). Original: Wenn Sie eine große Musiksammlung haben, möchten Sie vielleicht für jede Art von Musik, die Sie haben, eine Tabelle erstellen. Anstatt jede Tabelle aus dem Assistenten zu erstellen, können Sie Kopien der Originaltabelle machen. Die Kopien werden dann nach der Art der Musik benannt, die darin enthalten ist. Anmerkung: Genau das sollte eigentlich nie gemacht werden. Soll denn für jede Tabelle später ein gesondertes Eingabeformular erstellt werden? Oder soll per Makro die Quelle für das Formular auf Knopfdruck gewechselt werden? Die Art der Musik gehört als separate Tabelle dazu und der Primärschlüssel wird in die Haupttabelle eingefügt. Dann kann die Haupttabelle über die Art-Tabelle gefiltert werden. Eine Tabellenkopie mache ich nur um mit den Daten experimentieren zu können, vielleicht auch Daten in eine andere Datenbank zu transportieren – aber nie, um die Struktur einer bestehenden Tabelle zu verdoppeln. Original: Der Primärschlüssel dient nur einem Zweck - nämlich zur eindeutigen Identifizierung des Datensatzes. Daher kann ein beliebiger Name für dieses Feld verwendet werden. Im Beispiel wurde KraftstoffID verwendet, damit schnell erkennbar ist, zu welcher Tabelle er gehört. Anmerkung: An dieser Stelle ist die Kenntlichmachung durch einen Zusatz wie „Kraftstoff“ gar nicht erforderlich. Schließlich handelt es sich um die Tabelle „Kraftstoff“. Erst wenn die ID in einer anderen Tabelle als Bezug benötigt wird lohnt sich ein Abweichen von der standardmäßigen Bezeichnung ID (Identifikationsnummer). Original: Zahlungsart nutzt Text [VARCHAR]. Dies ist die Standardeinstellung. Anmerkung: Das mag in der Vorlage so sein – für sinnvoll halte ich das nicht. Es gibt vermutlich eine begrenzte Zahl an Zahlungsarten – dann wiederholt sich der Wert. Bei Text nimmt das unnötig Speicher weg. Hier gehört die ArtID hin und eine separate Tabelle nach außerhalb. --------------------------------------------------- Das mag manchen Leuten pingelig erscheinen - aber genau das gehört vermutlich zum Stil von Leuten, die Datenbanken erstellen dazu. Sonst ist beim Betrieb der Datenbank nachher die Verwunderung groß. Das Erste, was ich jetzt mit der Dokumentation mache: Die Datenbank nach der Anleitung zusammenbauen. Danach kann ich dann gerne hier die einzelnen Änderungsvorschläge einbringen. Nur offensichtlich falsche Textstellen (schon aus dem Original in Englisch wie die Behauptung, dass TINYINT Zahlen bis 999 speichern kann - eine einfache Tabelle in Base zeigt bei TINYINT und der Eingabe 999 '-25' an) sollten auf jeden Fall verschwinden - sonst sehe ich keinen Sinn in meinem Engagement. Gruß Robert -- Informationen zum Abmelden: E-Mail an discuss+h...@de.libreoffice.org Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de Listenarchiv: http://listarchives.libreoffice.org/de/discuss/ Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert