Hi,
also ich komm da grade nicht weiter.
folgende situation :
ID-Eintrag erfolgt automatisch
Erstelldatum erfolgt bei jedem Eintrag automatisch (per Makro)
nu will ich eine lfd.-Nr. abhaengig vom vorherigen Eintrag und eine "Bestellnummer", zusammengesetzt aus
Erstelldatum(8stellig) aber im Format JahrMonatTag & lfd-Nummer(4stellig)
als beispiel :
ich mache einen eintrag heute (20090506) und es ist der erste Eintrag heute(0001)
beim 2.eintrag heute soll die nummer halt (0002) sein.
mache ich den naechsten Eintrag morgen :
(20090507) & Nummer = 0001
das Ganze soll automatisch per direktem SQL-Befehl erfolgen, nicht per Makro, also Neuer Eintrag = Datum + Neue Nummer.
ich hab es mit >extra>sql... probiert, jedoch muss ich bei jedem Eintrag diesen Befehl ausführen, wie mache ich das, das ich diesen Befehl nur einmal eingeben muss, und bei jedem Eintrag in die Tabelle wird dieser SQL-Befehl automatisch ausgeführt.
also praktisch wie diese hier "alter table "Tabelle" alter "Datum" set default Current_date" nur dass Current_Date die zusammengesetzte nummer ist
LG
Andreas
in Tabelle "nummer" generieren
Moderator: Moderatoren
Re: in Tabelle "nummer" generieren
Hallo keksi1970,
höchstwahrscheinlich kannst Du sowas mit der HSQLDB nicht umsetzen.
Wenn eine AUTO_INCREMENT Spalte Teil eines mehrspaltigen Index ist, kann man sowas mit anderen DB-Systemen z.B. mit mySQL versuchen. Dann aber nicht zusammengesetzt, sondern in separaten Spalten in folgender Form :
20090506 0001
20090506 0002
20090506 0003
20090507 0001
20090507 0002
20090507 0003
Über eine Abfrage müsste man dann diese beiden Werte zusammenfügen.
Gruß Barlee
höchstwahrscheinlich kannst Du sowas mit der HSQLDB nicht umsetzen.
Wenn eine AUTO_INCREMENT Spalte Teil eines mehrspaltigen Index ist, kann man sowas mit anderen DB-Systemen z.B. mit mySQL versuchen. Dann aber nicht zusammengesetzt, sondern in separaten Spalten in folgender Form :
20090506 0001
20090506 0002
20090506 0003
20090507 0001
20090507 0002
20090507 0003
Über eine Abfrage müsste man dann diese beiden Werte zusammenfügen.
Gruß Barlee
Re: in Tabelle "nummer" generieren
danke für die Antwort, das problem ist aber, dass ich aus dieser "nummer" halt auch das aktuelle Datum und die Vorgangsnummer sowie die Kundennummer auslesen wollte.
Konkretes Beispiel :
ein LKW fasst 33 Stellplätze. in diesen lade ich 3 Kunden mit je 10 Stellplätzen und von Kunde 4 nochmals 3
am selben Tag kommt ein neuer LKW, der weitere 7 Stellplätze von Kunde 4 fasst, sowie 26 von Kunde 5 (usw.). Manchmal jedoch fasst ein LKW keinen kompletten Kunden, so dass ich 1,5 LKWs brauche, die LKW-Nummer praktisch als Schluessel ausfällt
Hast du vielleicht eine Idee, wie ich einen eindeutigen Schlüssel generiere, der alle Aspekte und Möglichkeiten umfasst ? Und das möglichst automatisch, du weißt ja, DAUs müssen damit arbeiten
LG
Andreas
Konkretes Beispiel :
ein LKW fasst 33 Stellplätze. in diesen lade ich 3 Kunden mit je 10 Stellplätzen und von Kunde 4 nochmals 3
am selben Tag kommt ein neuer LKW, der weitere 7 Stellplätze von Kunde 4 fasst, sowie 26 von Kunde 5 (usw.). Manchmal jedoch fasst ein LKW keinen kompletten Kunden, so dass ich 1,5 LKWs brauche, die LKW-Nummer praktisch als Schluessel ausfällt
Hast du vielleicht eine Idee, wie ich einen eindeutigen Schlüssel generiere, der alle Aspekte und Möglichkeiten umfasst ? Und das möglichst automatisch, du weißt ja, DAUs müssen damit arbeiten

LG
Andreas
Re: in Tabelle "nummer" generieren
Hallo keksi1970,
aus meiner Sicht ist die Herangehensweise falsch, denn Du versuchst schon durch die Eingabe der Daten in die Ausgangstabelle alle Auswertungsmöglichkeiten zu schaffen. Was spricht zum Beispiel gegen eine Abfrage, worin Du die erforderlichen Nummern zusammensetzt und Auswertungen vornimmst? Diese kannst Du in einen View umwandeln, so dass er als "Tabelle" zur Verfügung steht. Trotzdem mal interessehalber:
Gruß Barlee
aus meiner Sicht ist die Herangehensweise falsch, denn Du versuchst schon durch die Eingabe der Daten in die Ausgangstabelle alle Auswertungsmöglichkeiten zu schaffen. Was spricht zum Beispiel gegen eine Abfrage, worin Du die erforderlichen Nummern zusammensetzt und Auswertungen vornimmst? Diese kannst Du in einen View umwandeln, so dass er als "Tabelle" zur Verfügung steht. Trotzdem mal interessehalber:
Wie stellst Du Dir eine Tabelle hierfür vor? Welche Spalten soll sie beinhalten, welche Felder sollen manuell befüllt und welche automatisch berechnet werden? Erstelle einmal eine Beispieltabelle zu o.g. Sachverhalt.ein LKW fasst 33 Stellplätze. in diesen lade ich 3 Kunden mit je 10 Stellplätzen und von Kunde 4 nochmals 3
am selben Tag kommt ein neuer LKW, der weitere 7 Stellplätze von Kunde 4 fasst, sowie 26 von Kunde 5 (usw.). Manchmal jedoch fasst ein LKW keinen kompletten Kunden, so dass ich 1,5 LKWs brauche, die LKW-Nummer praktisch als Schluessel ausfällt
Gruß Barlee