Servus Forum,
ich habe eine Datenbank, an der neben mir noch ein Kollege arbeiten muss. Wir haben nun beschlossen, das ganze über eine Kopie der Datenbank zu regeln, mit der er dann die Arbeiten vornimmt. Zum Schluss hängen wir die Daten seiner Tabellen an die Tabellen aus meiner DB an. Prinzipiell eigtl. kein Problem, in der Praxis aber doch: so entstehen nämlich Datensätze mit unterschiedlichem Inhalt, aber identischer ID. Da das ganze über ein Formular mit mehreren Subforumularen eingegeben werden soll, ist das ein relevanter Punkt. Ich würde es jetzt über bearbeiterspzifische IDs lösen, also Namenskürzel plus aufstiegende Zahl, sodass es keine Überschneidungen gibt. Allerdings muss diese ID dann immer händisch eingegeben werden, was lästig und potentiell fehleranfällig ist. Gibt es eigtl. eine Möglichkeit, nicht numerische IDs automatisch zu vergeben?
BEsten Dank!
Autowert für nicht-numerische ID
Moderator: Moderatoren
-
- Beiträge: 9
- Registriert: Fr, 25.04.2014 13:32
Re: Autowert für nicht-numerische ID
Spricht irgendwas dagegen, auf einer gemeinsamen Datenbank zu arbeiten? Das wäre nämlich die »saubere« Lösung.
Gruß
lorbass
Gruß
lorbass
-
- Beiträge: 9
- Registriert: Fr, 25.04.2014 13:32
Re: Autowert für nicht-numerische ID
Außer, dass ich von der Existenz einer solchen Möglichkeit nichts wusste, nix 
Ich bin Neuling in SQL/relationalen Datenbanken, weswegen ich vieles für andere Selbstverständliches noch nicht weiß. Wie lege ich so eine Datenbank denn an? Muss ich meine vorhandene Datenbank dann größer umbauen, um das erreichen zu können?

Ich bin Neuling in SQL/relationalen Datenbanken, weswegen ich vieles für andere Selbstverständliches noch nicht weiß. Wie lege ich so eine Datenbank denn an? Muss ich meine vorhandene Datenbank dann größer umbauen, um das erreichen zu können?
Re: Autowert für nicht-numerische ID
Oh, oh – für 'nen Grundkurs Base oder Datenbanken ist das Forum nicht ausgelegt. Das Allernotwendigste solltest du dir – eventuell gemeinsam mit deinem Kollegen – mit Hilfe von Off- und Online-Dokumentation aneignen.pony_slaystation hat geschrieben:Außer, dass ich von der Existenz einer solchen Möglichkeit nichts wusste, nix
Ich bin Neuling in SQL/relationalen Datenbanken, …
Schau dazu bitte bei LibreOffice ins Dokumentations-Portal, auch wenn du Apache OpenOffice verwendest. Im Apache OpenOffice Dokumentations-Portal finden sich leider nur etwas ältere Ausgaben. Auch das Archiv des vormaligen OOo Wikis lohnt vielleicht den einen oder anderen Blick. — Wenn Englisch kein Hinderungsgrund ist, lohnt auch ein Besuch beim Apache OpenOffice Documentation Project mit seinen HowTos, Tutorials und Screencasts.
Mindestens unser Mitstreiter Robert Großkopf aka RoberG, einer der Autoren des LibreOffice Base-Handbuches, wird dir bei Einzelfragen sicher weiterhelfen können. Nimm dir aber bitte ein paar Minuten und lies die Allgemeinen Hinweise zur Forumsbenutzung, die dir in jedem Bereich ganz oben in den Bekanntmachungen in die Augen springen. Und – na klar! – halte bitte diese »Spielregeln« dann auch ein.

Da du das nicht mitgeteilt hast, tippe ich mal, dass du eine HSQL-Datenbank betreibst und dein Kollege ebenso. Die ist leider nicht für den Zugriff durch mehrere Benutzer geeignet. In diesem Fall müsstet ihr tatsächlich eine komplett neue Datenbank wie MySQL aufbauen.pony_slaystation hat geschrieben:Muss ich meine vorhandene Datenbank dann größer umbauen, um das erreichen zu können?
Wie schon mehrfach mit mehr oder weniger großen Zaunpfählen angedeutet, fehlen aber für eine Beurteilung so ziemlich alle Informationen…
Gruß
lorbass
Re: Autowert für nicht-numerische ID
Hallo pony_slaystation,
Nur kurz zur Info:
Mit der internen Datenbank sind Einzelplatzlösungen ganz ordentlich lösbar. Auch eine Bearbeitung von mehreren Personen zu unterschiedlichen Zeiten geht - Datei einfach rumschicken. Eine gleichzeitige Bearbeitung und spätere Zusammenführung gibt aber nur Stress.
Von den Treibern her in Base am besten unterstützt ist PostgreSQL. Da gibt es bei LibreOffice immer den direkten Treiber dabei. Bei MySQL scheint es beim direkten Treiber mehr Probleme zu geben.
Jetzt ist es natürlich wichtig, ein bisschen was zum Netz zu wissen. Für eine Datenbank reicht eigentlich ein MiniPC aus - Linux drauf, Pakete drauf, Datenbank nach Base-Handbuch erstellen. Tabellenerstellung geht dann anschließend aus Base heraus.
Autowert bei zwei unabhängigen Nutzern würde ich zur Not über ein Makro lösen. Das Feld "ID" wäre INTEGER, das Feld "User" bestände aus einem Buchstaben. Das Feld "ID" würde ich vor dem Speichern jeweils um eine Nummer hoch setzen, das Feld "User" über das Formular (versteckt) mit einem Buchstaben belegen. Beide Felder zusammen würden den Primärschlüssel bilden. Dann hast Du von einem Rechner z.B. 1a, von dem anderen 1b. Ein Autowert-Feld der herkömmlichen Art lässt sich leider mit keinem zweiten Feld als Primärschlüssel kombinieren.
Gruß
Robert
Nur kurz zur Info:
Mit der internen Datenbank sind Einzelplatzlösungen ganz ordentlich lösbar. Auch eine Bearbeitung von mehreren Personen zu unterschiedlichen Zeiten geht - Datei einfach rumschicken. Eine gleichzeitige Bearbeitung und spätere Zusammenführung gibt aber nur Stress.
Von den Treibern her in Base am besten unterstützt ist PostgreSQL. Da gibt es bei LibreOffice immer den direkten Treiber dabei. Bei MySQL scheint es beim direkten Treiber mehr Probleme zu geben.
Jetzt ist es natürlich wichtig, ein bisschen was zum Netz zu wissen. Für eine Datenbank reicht eigentlich ein MiniPC aus - Linux drauf, Pakete drauf, Datenbank nach Base-Handbuch erstellen. Tabellenerstellung geht dann anschließend aus Base heraus.
Autowert bei zwei unabhängigen Nutzern würde ich zur Not über ein Makro lösen. Das Feld "ID" wäre INTEGER, das Feld "User" bestände aus einem Buchstaben. Das Feld "ID" würde ich vor dem Speichern jeweils um eine Nummer hoch setzen, das Feld "User" über das Formular (versteckt) mit einem Buchstaben belegen. Beide Felder zusammen würden den Primärschlüssel bilden. Dann hast Du von einem Rechner z.B. 1a, von dem anderen 1b. Ein Autowert-Feld der herkömmlichen Art lässt sich leider mit keinem zweiten Feld als Primärschlüssel kombinieren.
Gruß
Robert