Hallo Alexander,
Ich habe z.B. eine Datenbank mit allen von mir gekauften Romanen/Comics
der verschiedenen STAR TREK Serien.
Um Eingabefehler zu vermeiden und die Access-Datenbank nicht unnötig
durch wiederkehrende Daten aufzublähen
habe ich die Daten aufgeteilt in:
- (Sammeltabelle) Daten = Spalten: Titel - Autor - Serie - Preis - Art -
Bewertung
- (Detailtabelle) Autor = Spalten: ID - Autor (Das Feld ID wird mit dem
Feld 'Autor' der Sammeltabelle verknüpft)
- (Detailtabelle) Serie = Spalten: ID - Serie (Das Feld ID wird mit dem
Feld 'Serie' der Sammeltabelle verknüpft)
- (Detailtabelle) Art = Spalten: ID - Art (Das Feld ID wird mit dem Feld
'Art' der Sammeltabelle verknüpft)
- (Detailtabelle) Bewertung = Spaten: ID - Bewertung (Das Feld ID wird
mit dem Feld 'Bewertung' der Sammeltabelle verknüpft)
Die Felder 'Autor', 'Serie', 'Art' und 'Bewertung' in der Sammeltabelle
sind auf "Zahl" eingestellt.
Das bedeutet, dass Deine Datenbank aus 5 Tabellen besteht. Die zentrale
Tabelle "Daten" besteht bis auf den Preis nur aus Zahlen (eigener
Primärschlüssel und Fremdschlüssel aus anderen Tabellen).
Ich möchte nun diese DB/Tabellen in eine Datenbank die in OO.org bzw.
Libre bearbeitbar ist umwandeln und die bestehenden Daten
übernehmen.
OO.org stellt eine "Verbindung zu einer Datenbank" her ... was muss ich
mir darunter vorstellen?
Wenn Du eine Verbindung herstellst ist das einmal einfach gesprochen das
Gleiche, wie Du es mit einem Webbrowser zu einer Seite im Netz machst. Kaufst
Du im Netz in einem Laden ein, so gibst Du dort Daten in die Datenbank des
Anbieters. Auf Deinem Browser zuhause siehst Du lediglich das Formular.
Auch Base stellt nur das Formular und eventuelle Fragen (Abfragen) zur
Verfügung. Die Datenbank selbst bleibt weiter bestehen. Du arbeitest also mit
der Jet-Datenbank, mit der auch Access arbeitet.
Willst Du richtig umsteigen, so musst Du die Daten importieren. Du stellst
also eine Verbindung her (Verbindung_zu_Access_Jet.odb) und eine neue
Datenbank (Meine_Serien_Neu.odb). Du gehst mit der rechten Maustaste auf die
Tabellen aus Access/Jet und kopierst die Tabellen. Dann fügst Du die Tabellen
in Meine_Serien_Neu.odb ein. Das Feld ID ist immer der Primärschlüssel.
Vermutlich musst Du die Felder anschließend noch bearbeiten, so dass daraus
wieder ein Autowert wird.
Erst wenn Du alle Tabellen importiert hast kannst Du hingehen und nur noch mit
der Meine_Serien_Neu.odb weiterarbeiten.
Ist diese "Verbindung" das was Access
"Importierung"
nannte oder das was dort "Verkknüpfung" hieß (das Bearbeiten von Daten
einer anderen Datenbank über eine andere)?
Verknüpfung ist da wohl das treffende Wort.
In Access würde ich über "Datei > Daten importieren" dieses
bewerkstelligen, damit die Daten in der Ursprungsdatenbank nicht
verändert werden.
Formulare habe ich in Access immer über den Formulareditor (grafische
Oberfläche) erstellt und konnte zwischen "Dateneingabe/Datenansicht"
und "Entwurfansicht" per rechter Mausklick wechseln.
Für die wenigen Tabellen, die Du genannt hast, ist das meines Erachtens nur
ein Formular. Dafür würde ich den Formularassistenten laufen lassen und wir
lauter Felder anhand der Tabelle "Daten" produzieren lassen. Danach würde ich
das Formular weiter bearbeiten.
Je nachdem wie weit ausgedehnt bereits die "Nebentabellen" sind (Auto, Serie
usw.) gibt es jetzt zwei Möglichkeiten weiterzuarbeiten. Möglichkeit 1 ist
die, alle entsprechenden Felder in Listenfelder umzuwandeln. Mit Hilfe des
Assistenten konstruierst Du dazu die entsprechenden Abfragen. Danach hast Du
ein Formular, mit dem Du Eingeben und Suchen und Filtern kannst.
Möglichkeit 2 ist die, die ich für neue Datenbanken bevorzuge. Statt der
Listenfelder baust Du zusätzlich sogenannte Kombinationsfelder ein. Die
gestatten neben der Auswahl eine Neueingabe. Leider würden Kombinationsfelder
aber nur den Text abspeichern, nicht die Nummer, die Du ja in der Tabelle
"Daten" brauchst. Um das geregelt zu bekommen habe ich mir ein entsprechendes
Makro zusammengestellt, das letztlich die Kombinationsfeldern zu Listenfeldern
mit zusätzlicher Eingabemöglichkeit erweitert. Ich habe so etwas in einigen
Beispielen auf
http://robert.familiegrosskopf.de/
eingebaut. (Vielleicht nicht die aktuellste Fassung - da muss ich noch einmal
schauen ...)
Geht dies auch im Libre? (Im OO.org hatte ich beispielsweise das
Problem, ein einmal erstelltes Formular nicht mehr in der
Entwurfsansicht öffnen
zu können)
Sicher geht das, ich habe die Dinger ja alle mit OOo erstellt. Rechte
Maustaste - zum Bearbeiten öffnen.
Ich bin mir sicher, dass ich nicht die Formulare aus Access werde
übernehemen können und diese neu erstellen muss. Da es in Access einige
Formularaktionen gab, die ich nicht über die Eigenschaften einstellen
konnte musste ich mir dafür mit Makros behelfen. MAKRO war dort
wie TABELLEN, ABFRAGEN, FORMULARE und BERICHTE eine eigene "Rubrik" - im
OO.org-Base fand ich keine entsprechende,
wie sieht dies im Libre-Base aus?
Nein, eine eigene Rubrik "Makro" findest Du nicht. Die Makros liegen unter
Extra - Makros - Makros verwalten. Zuerst sollstest Du aber klären, ob denn
wirklich die Aktionen nicht auch ohne Makros gehen. Schreib dazu ruhig
entsprechende Mails - nur vielleicht nicht weiter mit diesem Betreff "Fragen
...", damit auch andere Datenbankinteressierte darauf kommen: Hier könnte ich
etwas zu beitragen.
Gruß
Robert
--
E-Mail to users+help@de.libreoffice.org for instructions on how to unsubscribe
List archives are available at http://de.libreoffice.org/lists/users/
All messages you send to this list will be publicly archived and cannot be deleted
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.