2011-05-24 20:07:13 +0000 2011-05-24 20:07:13 +0000
9
9
Advertisement

Wie setze ich den ersten Wert von AutoNumber in Access?

Advertisement

Ich muss den AutoNumber-Wert nicht zurücksetzen, wie diese Frage , sondern möchte die Zahl zunächst auf setzen:

1001

, die dann ganz normal hochzählt:

1001

1002

1003

Wie kann ich das in Access 2010 machen?

Advertisement
Advertisement

Antworten (7)

15
15
15
2011-05-24 20:33:07 +0000

Obwohl Access diese Funktion nicht nativ anbietet, kann sie durch eine Abfrage wie die folgende erreicht werden:

CREATE TABLE TableThatIncrements
(
Id AUTOINCREMENT(1001,1)
)

Damit wird eine einzelne Tabelle mit dem Namen “TabelleDasErhöhen” mit einer einzigen Spalte namens “Id” erstellt. Sie können nun den Tabelleneditor verwenden, um Eigenschaften und/oder andere Spalten hinzuzufügen.

Ändern Sie

AUTOINCREMENT(x,y)

, um Ihren Bedürfnissen gerecht zu werden, wobei x die anfängliche Inkrementierungsnummer und y die Nummer ist, mit der inkrementiert wird. AUTOINCREMENT(100,5) ergibt also: 100, 105, 110, 115, usw.

Wenn Sie eine vorhandene Tabelle ändern möchten, verwenden Sie die folgende Abfrage. Stellen Sie sicher, dass die Registerkarte der betreffenden Tabelle geschlossen ist, damit Access sie sperren und ändern kann.

ALTER TABLE TableThatIncrements
   ALTER COLUMN Id AUTOINCREMENT(1001,1)

Sie können eine Abfrage in Access ausführen, indem Sie die folgenden Schritte ausführen:

  1. Gehen Sie auf die Registerkarte “Erstellen” und klicken Sie auf “Abfrageentwurf”

  2. Schließen Sie einfach das erscheinende Fenster, das Sie auffordert, Tabellen auszuwählen, wir brauchen das nicht.

  3. Gehen Sie auf die Registerkarte “Design” und klicken Sie auf die Schaltfläche mit dem Pfeil, bis Sie eine Texteingabemaske erhalten. (Standardmäßig steht dort SELECT;).

  4. Löschen Sie den Standardtext und fügen Sie die obige Abfrage ein.

  5. Klicken Sie auf “Ausführen”.

2
2
2
2018-06-27 14:18:09 +0000

1- Tabelle1 erstellen 2- Gehen Sie zu ——- > Abfrage entwerfen. 3- Schließen Sie die Tabelle 4- Gehen Sie zu SQl von oben. 5- Geben Sie diesen Code ein.

ALTER TABLE [TABLE1] ALTER COLUMN [Id] COUNTER (8982,1)

1
Advertisement
1
1
2011-05-24 20:18:11 +0000
Advertisement

Sie müssen Access austricksen, weil es davon ausgeht, dass Sie nicht an einer anderen Autonummer interessiert sind als der, die es bereitstellt.

Sie müssen die Tabelle mit der benutzerdefinierten Autonummer beginnen, was einige Einstellungen erfordert. Aber wenn es einmal läuft, können Sie einfach von dort aus weiter hinzufügen.

Wenn Sie nach “access change autonumber start” googeln, finden Sie mehrere Möglichkeiten, dies zu tun. Die meisten basieren auf dem Erstellen einer Append-Abfrage, um das Feld zu ändern.

Erstellen Sie die erste Tabelle, die das Zählertypfeld enthält, das Sie auf eine andere Nummer starten möchten. Erstellen Sie eine zweite Tabelle mit einem einzelnen Feld vom Typ “Long Integer Number”, das denselben Namen wie das Zählerfeld in der ersten Tabelle hat. Erstellen Sie einen Datensatz in der zweiten Tabelle, indem Sie eine Zahl eingeben, die um eins kleiner ist als die Zahl, bei der Sie den Zähler in der ersten Tabelle starten wollen. Erstellen Sie eine Append-Abfrage, um den einen Datensatz in der zweiten Tabelle an die erste Tabelle anzuhängen, und führen Sie sie aus Löschen Sie die zweite Tabelle, löschen Sie den Datensatz, den Sie an die erste Tabelle angehängt haben, und beginnen Sie mit der Dateneingabe.

Von MVPS.org http://access.mvps.org/access/tables/tbl0005.htm

Wenn Sie keine Lust haben, eine Abfrage zum Anhängen zu erstellen, können Sie jederzeit die Tabelle einrichten und 1000 Zeilen mit Dummy-Daten aus Excel kopieren und einfügen, die Datensätze löschen, bis Sie bei Nummer 1001 angelangt sind, und von dort aus weitermachen.

UPDATE: Hinzufügen einer Erklärung für den Grund

Der Grund dafür, dass die Autonummer nur bei 1 beginnt, liegt darin, dass das Feld “Autonummer” als internes Referenzfeld gedacht ist und nach guter Datenbankpraxis im Allgemeinen nicht in einer öffentlich sichtbaren Form verwendet werden sollte. Es wird in Fällen verwendet, in denen es nicht bereits ein eindeutiges Element in einer bestimmten Tabelle gibt, um einen eindeutigen Eintrag zu erstellen, mit dem die Tabelle durchsucht und indiziert werden kann.

1
1
1
2018-02-10 22:13:06 +0000

Diese Website bietet eine sehr einfache Möglichkeit, Ihre Autonummer mit einer beliebigen Zahl zu beginnen http://www.fmsinc.com/microsoftaccess/AutoNumber%20Field/Creating.asp

Sie erstellen eine Abfrage mit einem Ausdruck, der dem Autonummernfeld mitteilt, dass es sich ändern soll

“Führen Sie zuerst diese Abfrage aus:

INSERT INTO tblName ( ID ) SELECT 999 AS Expr1

Dabei ist tblName der Tabellenname und ID der Name des AutoNumber-Feldes.

Führen Sie dann eine zweite Abfrage aus, um die Zeile zu löschen, die Sie eingefügt haben:

DELETE FROM tblName WHERE ID=999;

(Alternativ können Sie auch einfach die Tabelle öffnen und die eingefügte Zeile manuell löschen).

Der nächste Datensatz, der der Tabelle hinzugefügt wird, erhält nun den Wert 1000.

Diese Methode funktioniert mit einer neuen Tabelle oder mit einer Tabelle, deren AutoNumber noch nicht den Seed-Wert erreicht hat. (Natürlich wird das ID-Feld für vorhandene Zeilen nicht geändert, aber nachfolgende Zeilen beginnen mit 1000.)”

0
Advertisement
0
0
2017-01-24 18:13:24 +0000
Advertisement

Dies ist ein ziemlich altes Thema, aber es erscheint immer noch unter den ersten drei Google-Suchergebnissen.

Ein Grund, warum ein Benutzer den Wert eines Autonummernfeldes ändern möchte, ist die Korrektur eines Fehlers, der durch eine Datenbankbearbeitung verursacht wurde. Wenn ein Administrator größere Änderungen an einem Frontend einer Datenbank vornehmen möchte, könnte er Kopien aller zugehörigen Tabellen erstellen und eine Entwicklungskopie des Frontends auf diese Backends umleiten. Wenn die Änderungen ausreichend sind, kann er einfach die Produktionskopie des Frontends durch seine Kopie ersetzen und alle verknüpften Tabellen nach dem Testen umleiten.

Kein Problem, richtig? Nun, die automatische Nummerninkrementierung bleibt beim Frontend. Wenn also die Produktionsseite gerade die Autonummer um 50 oder 500 oder 5000 Zahlen erhöht hat, während der Administrator an der Kopie gearbeitet hat, dann wird die neue Produktionskopie die gleichen Zahlen wiederholen und nicht in der Lage sein, Elemente in diese Felder einzugeben, eine nach der anderen, bis sie “im Reinen” ist. Kopieren Sie 50, 500 oder 5000 Zeilen von Excel-Daten und versuchen Sie, sie einzufügen. Es wird bei jeder Zeile ein Fehler auftreten (stellen Sie sicher, dass Sie weitere Meldungen unterdrücken, wenn sie erscheinen), aber die automatische Nummerierung wird um diesen Betrag erhöht und Sie können wieder loslegen. Wenn Sie auf diese Weise Autonummern verwenden, wäre es ratsam, die Nummern auf den Stand der Produktions-DB zu erhöhen, bevor Sie sie mit Ihrer Entwicklungskopie überschreiben.

Dies ist auch eine Möglichkeit, Ihre Autonummer bei etwas höherem als 1 zu beginnen. Wie in den alten Tagen, als Sie den Zähler für die Seitenbesuche auf Ihrer Geocities-Homepage auf 17.479 setzten, obwohl sie in Wirklichkeit nur 16 mal besucht wurde. Von Ihnen.

0
0
0
2017-11-12 15:50:55 +0000

Ich glaube, dass es möglich ist, Ihren benutzerdefinierten Inkrementbereich zu erreichen, indem Sie zuerst eine versteckte Tabelle erstellen, die die anfängliche Lücke der automatischen Inkremente, die von Null bis zu Ihrer Wahl beginnen, beibehält, z. B. wird diese Tabelle die 0 bis 1050 behalten, dann beginnen Sie mit den Inkrementen 1055, 1060, 1065 usw. Diesen Teil der Daten blenden Sie dann in der Tabelle aus. Ich hoffe, das hilft. Scheint so, als ob Access so konzipiert wurde, dass es zunächst von Null aus betrachtet wird, da Konflikte entstehen werden.

0
Advertisement
0
0
2017-02-24 02:19:19 +0000
Advertisement

Eine einfache Möglichkeit, etwas Ähnliches zu erreichen, besteht darin, ein Autonummernfeld (z. B. “ID”) und ein zweites berechnetes Feld (z. B. “ItemID”) zu haben und die Formel “1000+[ID]” für das berechnete Feld einzugeben. Dieses neue Feld verfolgt nun automatisch das Autonummernfeld, beginnt aber bei 1001 statt bei 1.

Advertisement