vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Datenbanken · SQL-Server   |   VB-Versionen: VB615.03.10
Auto-Wert beim Hinzufügen neuer Datensätze selbst festlegen (SQL-Server)

Mit dem Setzen der System-Option IDENTITY_INSERT lässt sich festlegen, ob Werte in einer Auto-Wert Spalte explizit eingefügt werden dürfen.

Autor:   Dieter OtterBewertung:  Views:  12.054 
www.tools4vb.deSystem:  Win2k, WinXP, Win7, Win8, Win10, Win11kein Beispielprojekt 

Auto-Werte sind ewtas sehr "schönes" und bequemes und werden meist dazu verwendet, Datensätze eindeutig zu kennzeichnen. Um die Vergabe dieser automatischen Nummer kümmert sich das Datenbank-System. Eine explizite Zuweisung eines Wertes zu einer sogenannten IDENTITY-Spalte lässt der SQL-Server bspw. auch gar nicht zu! Jetzt kann es aber duchaus vorkommen und sinnvoll sein, den Auto-Wert beim Hinzufügen neuer Datensätze manuell zu vergeben, bspw. dann, wenn man eine externe Datenbank-Tabelle importieren muss und die darin vergebenen Auto-Nummer-Werte wieder verwenden muss.

Für diesen Fall stellt uns der SQL-Server die System-Option IDENTITY_INSERT zur Verfügung. Mit dieser Option legt man fest, ob in eine Tabellenspalte mit der Eigenschaft IDENTITY Werte explizit eingefügt werden dürfen.

Anwendungsbeispiel:

' Auto-Werte selbst einfügen
oConn.Execute "SET IDENTITY_INSERT [Tabellenname] ON"
 
' Datensätze hinzufügen
...
 
' manuelle Vergabe der Auto-Werte wieder ausschalten
oConn.Execute "SET IDENTITY_INSERT [Tabellenname] OFF"



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.