Hallo Patrik,
also ich habe folgendes zur L�sung verwendet (ersetze jeweils <DeinOwner> durch den Owner der Tabellen):
- als erstes eine Tabelle "sequences" anlegen. Ich habe zwei Spalten vorgesehen, damit man mehrere Sequenzen verwalten kann.
CREATE TABLE <DeinOwner>.sequences ( [seq] varchar(100) NOT NULL , [sequence_id] int )
In [seq] speicherst Du einen Sequenznamen (z.B. meinetabelle.meinePKspalte_seq) und in [sequence_id] den letzten laufenden Wert. Als Startwert kann
INSERT INTO <DeinOwner>.sequences ([seq],[sequence_id]) VALUES ('blabla_seq', 0)
eingetragen werden.
Dann wird eine SP angelegt:
CREATE PROCEDURE <DeinOwner>.nextval @sequence varchar(100), @sequence_id INT OUTPUT AS set @sequence_id = -1
UPDATE <DeinOwner>.sequences SET @sequence_id = sequence_id = sequence_id + 1 WHERE seq = @sequence
SELECT sequence_id from <DeinOwner>.sequences where [EMAIL PROTECTED]
RETURN @sequence_id GO
Ich wei� nicht, warum das so merkw�rdig aussieht, ich meine es anders geschrieben zu haben. Ist aus dem Enterprise Manager herauskopiert. Es tut jedenfalls was es soll... Folgender Aufruf:
EXEC <DeinOwner>.nextval 'blabla_seq',0
liefert dann den n�chsten Wert.
Gru�, Helge
[EMAIL PROTECTED] wrote:
Hoi Helge
Ich kenn das noch vage von meiner letzten Oracle-DB mit der Sequenz. Genau das meine ich! Aber halt ebene f�r den SQL Server von Microsoft.
Gr�sse
Patrik
************************* _______________________________________________ This ASP.NET email is sponsored by: UDEX ProMenu.Net - Die Software f�r Navigation - Jetzt kostenlos testen! Tree- Style, Horizontal- Slide, Vertical- Slide. http://www.udexnet.com
_______________________________________________ Asp.net Mailingliste, Postings senden an: [EMAIL PROTECTED] An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net *************************
