Cncorrenza

lunedì 18 giugno 2007 - 11.56

bluland Profilo | Guru

salve,

ho la seguente tabella

CREATE TABLE [Table1] (
[id] [decimal](18, 0) IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[campo1] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[campoid] [decimal](18, 0) NULL ,
CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED
(
[id]
) ON [PRIMARY]
) ON [PRIMARY]
GO

INSERT INTO [tempdb].[dbo].[Table1]( [campo1], [campoid])
VALUES('PROVA1',0)
INSERT INTO [tempdb].[dbo].[Table1]( [campo1], [campoid])
VALUES('PROVA2',0)

dovrei effettuare un' operazione di questo tipo:

UPDATE [tempdb].[dbo].[Table1]
SET campoid = (select max(campoid) + 1 from [tempdb].[dbo].[Table1])
where campo1 ='PROVA1'

il problema e' che se due utenti effettuano la stessa operazione per campo1='PROVA1' e campo1='PROVA2' potrei avere lo stesso campoid.

idee?

--------------------
Vincenzo PESANTE
System Engineer
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5