Office: (Office 2007) Autowert auf 0 setzen

Helfe beim Thema Autowert auf 0 setzen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, Ich hab ne Tabelle, in welcher jeder neue DS einen Index verpasst bekommt. Diese spielt lediglich innerhalb dieser Tabelle eine Rolle,... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Forza SGD, 24. Juli 2011.

  1. Autowert auf 0 setzen


    Hallo zusammen,

    Ich hab ne Tabelle, in welcher jeder neue DS einen Index verpasst bekommt. Diese spielt lediglich innerhalb dieser Tabelle eine Rolle, in Punkto Dublettenidentifikation. In der weiteren Verwendung der Datensätze spielt der Index keine Rolle.

    Wöchentlich wird diese Tabelle geleert. Wie kann ich den Autowert nach der Leerung der Tabelle wieder auf 0 setzen?

    Besten Dank!

    :)
     
    Forza SGD, 24. Juli 2011
    #1
  2. Hallo,
    komprimieren/reparieren aus den Datenbanktools sollte das erledigen.
     
    gpswanderer, 26. Juli 2011
    #2
  3. Hallo Klaus,

    danke für die schnelle Antwort. Komprimieren erfolgt beim Schließen - der Autowert klettert aber immer höher und höher! Er setzt quasi immerwieder an dem Punkt an, an welchem er vor der Löschung aufhörte!
     
    Forza SGD, 26. Juli 2011
    #3
  4. Autowert auf 0 setzen

    Hallo,
    kann ich nicht nachvollziehen, ist die Tabelle vollständig leer?
     
    gpswanderer, 26. Juli 2011
    #4
  5. Hallo!

    Grundsätzlich lässt sich der Autowert per DDL-Anweisung auf den gewünschten Wert setzen. Ich frage mich nur, warum du den Wert zurücksetzen willst, wenn er sowieso keine Rolle spielt. Für die Dublettenidentifikation ist doch die Zahl egal, oder?

    DDL-Anweisung:
    Code:
    .. z. B. mit Currentdb.execute ausführen ... dann beginnt der erste Autowert mit 0.

    mfg
    Josef
     
    Josef P., 26. Juli 2011
    #5
  6. \@gpswanderer: Ja, die tabelle wird wöchentlich vollständig ins Archiv verschoben ... besser gesagt wird der gesamte Tabelleninhalt verschoben.

    hallo Josef,

    Prinzipiell ist das alles richtig - explizit für die Dublettensuche sowie auch ganz allgemein für die Vorgänge in meiner DB stellt mich das vor keine Probleme.

    Es sieht halt lediglich unschön aus, wenn ich die werte importiere und die ID startet bei 1.005.452 ... dem schließt sich folgende Frage an: zwar ist es unwahrscheinlich an die Grenzen des Long Integer Wertes zu gelangen - aber rein hypothetisch könnte dies passieren. haben hohe Werte auswirkungen auf die Performanz? Würdest du mir davon abraten?

    Also mein Wunsch hat vordergründig stilistische Gründe, keine technischen!

    Danke für eure Hilfe
     
    Forza SGD, 27. Juli 2011
    #6
  7. Aus der Hilfe: Variablen vom Datentyp Long (lange Ganzzahl) werden als 32-Bit-Zahlen (4 Bytes) mit Vorzeichen im Bereich von -2.147.483.648 bis 2.147.483.647 gespeichert.
    Wie die 32 Bits gefüllt werden (1 oder 0), dürfte sehr egal sein, die Größe von 32 Bit ändert sich nicht.

    Man könnte temporäre Daten auch in einem Extra-Backend führen. Nach Abschluss der Verwendung löscht man dieses ganze Backend und erzeugt es bei erneutem Bedarf per Code neu inklusiv der Tabelle und der nötigen Verknüpfung ins Frontend.
    So hätte man zum einen immer einen sauberen Counter, der bei 1 anfängt, und zum anderen erzeugt man im Backend für die Stammdaten keinen Druck auf Notwendigkeit des Komprimierens.
     
    ebs17, 27. Juli 2011
    #7
  8. Autowert auf 0 setzen

    Hallo

    Ist die Datenbank vielleicht in Frontend und Backend aufgeteilt? Wann ja, musst Du das Backend komprimieren und reparieren.
     
    Köbi, 27. Juli 2011
    #8
  9. Es gibt verschiedene Backends - das betroffene ist für die aktuelle zu bearbeitenden DS vorgesehen - allerdings enthält dieses auch Tabellen welche dauerhaft im Backend verbleiben - von daher preferiere ich derzeit die lösung den Autowert mittels Code wieder zurückzusetzen.

    @ebs Ne sehr schöne Idee, doch rennt bei mir die Zeit etwas weg - aber ich werd`s mal ausprobieren!

    Noch ma blöd gefragt: wo stell cih das mit dem reparieren ein - habs irgendwie nicht finden können - oder setzt man dies via VBA um?
     
    Forza SGD, 27. Juli 2011
    #9
  10. Hast du so wenig Zeit, dass du die Vorschläge in den Beiträgen nicht einmal ausprobieren kannst? Mit der DDL-Anweisung kannst du nämlich auch ohne Komprimieren den Autowert einstellen. ;-)

    Bezüglich Speicherplatzbedarf ist es egal ob eine 1 oder die Zahl 1.234.567.890 gespeichert ist. Für die Indexsuche ist die Größe auch egal - außer die Größe der Zahl ergibt sich aus der Anzahl der Datensätze. ;-)
    BTW: falls du beim Autowert an die Long-Grenze kommst, beginnt der Autowert mit dem negativen Zahlenbereich und arbeitet sich dann auf 0 vor, um dann wieder bei 1 zu beginnen.

    mfg
    Josef
     
    Josef P., 27. Juli 2011
    #10
  11. Hallo

    Ich will keineswegs die Vorschläge der Gurus hier in Frage stellen.

    Ich frage mich, weshalb es nicht reicht, das betreffende Backend zu komprimieren und reparieren. Die anderen Tabellen werden doch davon nicht betroffen. Beim Komprimieren werden lediglich die Autowerte der leeren Tabellen auf 0 zurückgesetzt. Bei anderen Tabellen mit Inhalt wird der Autowert auf den letztmöglichen Wert zurückgesetzt. Bestehende Autowerte werden nicht geändert.
     
  12. Das Komprimieren kann auch problembehaftet sein. Besonders das automatische Komprimieren bei Schließen der DB ist leicht buggy. Daher sollte man nicht gar so leichtfertig damit sein.
    Besonders aber wird das Komprimieren gerne benutzt, um Temp-Müll (aufgeblasene und danach geleerte Tabellen => aufgeblähte DB) zu beseitigen. Da Forza SGD schon von Stil sprach: Müllvermeidung ist stilvoller als Müllbeseitigung, und das hieße dann z.B., tempörare Daten von den Stammdaten und deren Backend fernzuhalten.

    Auch: Sehr wahrscheinlich ist die Anlage des Counters zur Duplettenidentifikation ein Workaround, geschuldet der knappen Zeit. Mit entsprechenden Methoden kann man auch Duplikate in Stammdaten von Haus aus vermeiden statt diese zur Beseitigung identifizieren zu müssen. Sprich: Bei manchen geplanten Abläufen entstehen gewisse Probleme gar nicht erst.
     
  13. Autowert auf 0 setzen

    \@Eberhard
    Ich bin auch davon ausgegangen, dass explicit das Backend komprimiert und repariert wird. Das automatische Komprimieren bei Schliesen einer DB ist tatsächlich weder Fisch noch Vogel.

    Doch sonst. Was spricht dagegen, das Backend zu komprimieren und genau den Zustand zu erreichen, den der Threadstarter erreichen will?
     
  14. Ein rund um die Uhr genutztes Backend im Mehrnutzerbetrieb? Aktionen an einem File-Backend im Zugriff sollte man tunlichst unterlassen.

    Ich beherzige einen Hinweis von Josef Pötzl: Auch wenn ich an einer kleinen DB bastele, tue ich so, als wäre es eine richtige Datenbank mit wirklich vielen Datensätzen in der intensiven Nutzung (Ausfall = Problem!) - schon wegen der Gewohnheitsbildung. Da braucht man dann später nicht umlernen und umbauen. Erfolg der eigenen Anwendung sollte man nicht ausschließen ...

    Und noch einmal: Die Rückstellung eines Autowertes auf 0 in einer durchgeplanten DB ist unnötig und überflüssig, damit verbundene Maßnahmen dann ebenso.
     
  15. \@Eberhard

    Was soll jetzt das heissen

    Davon war ja nie die Rede.

    Und was soll diese Bemerkung im Klartext heissen?

    Du redest unverständlich.
     
Thema:

Autowert auf 0 setzen

Die Seite wird geladen...
  1. Autowert auf 0 setzen - Similar Threads - Autowert

  2. Access gefilterten Endlosformular die ID (Autowert) in eine Abfrage zu übergeben

    in Microsoft Access Hilfe
    Access gefilterten Endlosformular die ID (Autowert) in eine Abfrage zu übergeben: Hallo Zusammen, ist es möglich, aus einem gefilterten Endlosformular die ID (Autowert) in eine Abfrage zu übergeben? Das habe ich schon ausprobiert: In der Abfrage als Kriterium eingegeben...
  3. Autowert per VBA erhöhen und speichern

    in Microsoft Access Hilfe
    Autowert per VBA erhöhen und speichern: Hallo, ich möchte beim Öffnen eines Formulars gerne einen Datensatz erzeugen. Hierzu verwende ich folgenden VBA-Code: CurrentDb.Execute "insert into tbl_Autowert (ID, User, Datum, Uhrzeit) " &...
  4. Konstruierter AutoWert beim Hinzufügen vom Datensatz

    in Microsoft Access Hilfe
    Konstruierter AutoWert beim Hinzufügen vom Datensatz: Guten Tag, ich würde gerne einen Datensatz hinzufügen, wobei es neben dem AutoWert einen selbstkonstruierter "Auto"-Wert existiert. Neben der normalen ID, gibt es die Vorgangsnummer. Diese soll...
  5. AutoWert in andere Tabelle übertragen

    in Microsoft Access Hilfe
    AutoWert in andere Tabelle übertragen: Guten Abend zusammen, vorab möchte ich mich entschuldigen, wenn ich mich im Bereich Access noch nicht richtig ausdrücken kann. Ich habe erst vor ca. 1 Woche mit Acces angefangen und somit kaum bis...
  6. mit VBA in neuer Tabelle Tabellenfeld als AutoWert-Typ Replikations-ID erstellen

    in Microsoft Access Hilfe
    mit VBA in neuer Tabelle Tabellenfeld als AutoWert-Typ Replikations-ID erstellen: Hallo Erfahrungsträger, ich bemühe mich schon wieder viel zu lange, in einer mit VBA neu erstellten Tabelle ein Tabellenfeld als AutoWert mit Replikations-ID anzulegen. Und zwar ohne irgendwelche...
  7. Autowert bei Tabellenerstellungsabfrage

    in Microsoft Access Hilfe
    Autowert bei Tabellenerstellungsabfrage: Hallo Gemeinde, wie erreiche ich die Generierung eines Autowert-Feldes innerhalb einer Tabellenerstellungsabfrage. Anbei mein bisheriger SQL-Code: SELECT Union.LiefMaterial, Union.Lieferant,...
  8. Hinzufügen eines AutoWert-Felds als Primärschlüssel

    in Microsoft Access Tutorials
    Hinzufügen eines AutoWert-Felds als Primärschlüssel: Hinzufügen eines AutoWert-Felds als Primärschlüssel Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden