Ids definieren

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

DataBaseN°°B
Beiträge: 2
Registriert: Di, 19.04.2011 20:50

Ids definieren

Beitrag von DataBaseN°°B »

Hallo Liebe Forum user,

Mein aktuelles problem ist schlicht und simpel, und auch google hat auf meine anfragen nichts ausgespuckt was mir weiterhilft, darum versuche
ichs hier.

Die Primär ID in meiner Hauptabelle soll später einmal sowas wie ne LOT (product) nummer werden, die wird auch im eingabe formular sichtbar dargestellt.
Das Problem ergibt sich erst bei eingabe von testdaten wohl bemerkt ich lasse das ID feld automatisch befüllen, hierbei zeigt sich das meine ID´s im negativen bereich beginnen.
Ich habe die Option im verknüpften eingabe/anzeige feld im Formular bereits gefunden und geändert zu ZB.
start:9998760000
end:9999990000
interval:1
Dies führt dazu das jede ID im eingabe formular = 9998760000 ist, somit doppelt vergeben wird (zumindest innnerhalb des formulars). Und sie nur in der hauptabelle wieder mit negativen werten "unique" dargestellt werden.
Tue ich dies nicht habe ich auch im formular die unansehnlichen -233454598 IDs.
Also kurz um was muss ich tun damit die Ids im formular und der hauptabelle ansehnliche struktur bekommen, und in logischer abfolge vergeben werden also von wert 9998760000 immer +1?

Desweiteren habe ich festgestellt das zum beispiel die länge des keys von anfang an auf 10 vordefiniert ist und die option die anzahl der stellen zu verändern ist ausgegraut (inactive) bei erstellung einer tabelle. Ich hoffe dies spielt hier keine rolle da 10 stellige in "diesem" Fall ganz gut sind aber es würde mich zusätzlich einfach interessieren warum solch banale dinge inactive sind nach der default installation, und vorallem wie man das activiert.

Vielen Dank fürs lesen und wenn jemand eine antwort hat oder woanders zu finden weiss, würde es mich freuen hier von euch zu lesen.
Danke und Frohe Ostern!
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: Ids definieren

Beitrag von AndreasJBittner »

Hallo,

die wichtigen Sachen schreibst Du nicht. Wie ist denn Deine ID-Spalte in der Tabelle definiert? Es sollte ein (UNSIGNED) INTEGER AUTOINCREMENT PRIMARY KEY sein, dann gibts weder Duplikate (bzw. eine Fehlermeldung) noch negative Zahlen. Kopiere mal die ganze Tabelle ohne alte ID und füge Sie als neue ein, bei der Frage von OOo, ob eine ID angelegt werden soll, sag ja und laß die alte ID einfach weg bzw benenne sie um oder lösche sie später raus. Dann dürftest Du ein vernünftiges Verhalten bekommen.

Ansonsten schau mal wie das Formularfeld, in dem Deine ID/LOT-Nr. angezeigt wird, definiert ist (signed integer?) und dem unsigned integer dann ein Vorzeichen verpaßt.

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Ids definieren

Beitrag von F3K Total »

Hallo,
mein Tip, bitte an einer Kopie ausprobieren, wenn Du mit einer leeren Tabelle startest.
Gib unter Extras/SQL den folgenden Befehl ein

Code: Alles auswählen

ALTER TABLE "Name der Tabelle" ALTER COLUMN "Name der Spalte ID" restart with 9998760000
und führe ihn aus.
Gruß R
Antworten