AC97 - Feld mit Autowert erzeugen

Hallo Ihr Spezialisten,

ich möchte einer Tabelle ein Feld („Nummer“) hinzufügen, das die Eigenschaft AUTOWERT hat.

Wie ich einer Tabelle ein Feld hinzufüge, ist klar mit SQL:

ALTER TABLE Tabellenname ADD COLUMN Nummer LONG
(In diesem Fall hat das Feld „Nummer“ die Eigenschaft LONG INTEGER)

Wie kriege ich es aber hin, daß das Feld „Nummer“ die Eigenschaft AUTOWERT annimmt?

Zu beachten ist, das in der Tabelle schon ein Feld mit Daten existiert!

grübel, grübel und probier’ :-{

gruss moritzbock

Müsste IDENTITY als Datentyp sein.
Ob das Probleme gibt, weil die Tabelle schon Daten enthält weis ich nicht, nur das man ein Feld nicht in ein IDENTITY Feld umwandeln kann, wenn es schon Datensätze gibt, da du aber ein neues Feld anlegts, könnte es klappen.

Gruß
Enno

Hallo Enno,
danke für Deine Mühe, aber IDENTITY ist es leider auch nicht.
(Auch nicht ID, AUTOWERT etc. - ich habe alles ausprobiert)

heul …:-[ moritzbock

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Moin,

Schon mal mit „Unique“ experimentiert?

Gruß
Stephan

Hallo Stephan,

danke für Deinen Tip - aber UNIQUE ist ein eindeutiger Index, den ich aber nicht brauche. Mir geht´s eigentlich nur um die Nummerierung von vorhandenen Datensätzen und da ist COUNTER die optimale Lösung …

z.B. ALTER TABLE Tabellenname ADD COLUMN Feldname COUNTER

(siehe auch mein Beitrag „HEUREKA“ - leider als neuer Artikel erschienen)

gruss moritzbock

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Moritz,

wenn ich es richtig sehe, dann hat Dir noch niemand geholfen. Probiere doch mal folgendes: Den Text in einen Formularentwurf kopieren, dann Formular öffnen.

Private Sub Form_Open(Cancel As Integer)
Dim db1 As Database, t1 As TableDef, f1 As Field
Set db1 = CurrentDb
Set t1 = db1.TableDefs(„Tabellenname“)
Set f1 = t1.CreateField(„autowert_nr“)
f1.Type = dbLong
f1.DefaultValue = „GenUniqueID()“
f1.Attributes = dbAutoIncrField
t1.Fields.Append f1
t1.Fields.Refresh
End Sub

Gruß
Christoph Sievers

Hallo Christoph,

erstmal Danke für Deine Bemühung, mir immernoch zu helfen.

Leider habe ich mir schon selbst geholfen:

_Wie ich einer Tabelle ein Feld hinzufüge, ist klar mit SQL:

ALTER TABLE Tabellenname ADD COLUMN Nummer LONG
(In diesem Fall hat das Feld „Nummer“ die Eigenschaft LONG INTEGER )

Wie kriege ich es aber hin, daß das Feld „Nummer“ die Eigenschaft AUTOWERT annimmt?_

Die Antwort habe ich mir selbst gegeben im Posting HEUREKA weiter oben (Sorry, da hatte ich auf den falschen Button gedrückt - sollte eigentlich eine Antwort auf mein eigenes Posting werden!)

Also - die Eigenschaft ist COUNTER , dann funktioniert’s!

nochmals danke sagt

moritzbock

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]