Für Nummernkreise mit einfachem (nicht-datumsspezifischem) Prefix.
Beispiel für Anpassung mit postgreSQL über den Query-Editor von pgAdmin.
set search_path to <schemaname>; -- Sequenz erstellen CREATE SEQUENCE meinenummer INCREMENT 1 MINVALUE 1 MAXVALUE 9999999999 -- muss groß genug sein um alle Datensätze durchnummerieren zu können START <Nächste zu vergebende Nummer>; -- Datensätze durchnummerieren UPDATE <Tabelle> SET <Nummernfeld> = '<MeinPrefix>' || NEXTVAL('meinenummer')::varchar(255) FROM ( SELECT intid, datcreated FROM <Tabelle> WHERE datcreated > make_date(<Jahr>, <Monat>, <Tag>) -- Durchnummerierung ab diesem Erstellungsdatum ORDER BY datcreated FOR UPDATE ) L WHERE <Tabelle>.intid = L.intid; -- Nummernkreis aktualiseren UPDATE zz47_nummernkreise SET nextvalue = NEXTVAL('meinenummer') WHERE name='<Nummernkreisname>'; -- Sequenz löschen DROP SEQUENCE meinenummer; -- Veränderte Datensätze anzeigen SELECT intid, datcreated, <Nummernfeld> FROM <Tabelle> WHERE datcreated > make_date(<Jahr>, <Monat>, <Tag>) ORDER BY datcreated ASC;
Überblick
Inhalte