Autowert für nicht-numerische ID

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

pony_slaystation
Beiträge: 9
Registriert: Fr, 25.04.2014 13:32

Autowert für nicht-numerische ID

Beitrag von pony_slaystation »

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!
Benutzeravatar
lorbass
********
Beiträge: 4116
Registriert: Mo, 01.05.2006 21:29
Wohnort: Bonn

Re: Autowert für nicht-numerische ID

Beitrag von lorbass »

Spricht irgendwas dagegen, auf einer gemeinsamen Datenbank zu arbeiten? Das wäre nämlich die »saubere« Lösung.

Gruß
lorbass
pony_slaystation
Beiträge: 9
Registriert: Fr, 25.04.2014 13:32

Re: Autowert für nicht-numerische ID

Beitrag von pony_slaystation »

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?
Benutzeravatar
lorbass
********
Beiträge: 4116
Registriert: Mo, 01.05.2006 21:29
Wohnort: Bonn

Re: Autowert für nicht-numerische ID

Beitrag von lorbass »

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, …
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.

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. ;)
pony_slaystation hat geschrieben:Muss ich meine vorhandene Datenbank dann größer umbauen, um das erreichen zu können?
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.

Wie schon mehrfach mit mehr oder weniger großen Zaunpfählen angedeutet, fehlen aber für eine Beurteilung so ziemlich alle Informationen…

Gruß
lorbass
RobertG
********
Beiträge: 2067
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Autowert für nicht-numerische ID

Beitrag von RobertG »

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
Antworten