66 messaggi dal 29 aprile 2001
www.xepient.com
Ciao a tutti,

Ecco il mio problema:
devo creare una pagina che va a fare un' INSERT in una tabella access2000. al momento dell' insert, c'e' una Key che viene generata da un' autonumber. Come faccio a sapere qual'e' questa Key generata automaticamente? senza dover fare un'altro select?

in pratica, vorrei creare l'equivalente di una Stored Procedure in SQL server tipo questa:


create procedure spProcedure (@input varchar(10), @retval int OUTPUT) as
insert into tblTabella (input)
values (@input)
select @retval = @@IDENTITY

vi ringrazio anticipatamente dell' aiuto.

Andrea.




13 messaggi dal 28 marzo 2001
che io sappia devi lanciare una select in questo modo
>> set rcs = conn.execute ("select @@IDENTITY") <<

ed in rcs(0) troverai il valore che ti interessa








Dragon77

Dragon77
13 messaggi dal 28 marzo 2001
a dimenticavo naturalmente subito dopo aver eseguiro l'insert

Dragon77

Dragon77
66 messaggi dal 29 aprile 2001
www.xepient.com
Ciao dragon,

grazie del suggerimento.

Alla fine il problema l'ho risolto in un modo molto simile a quello da te suggerito, anzi uguale, tranne che ho messo sia l' insert che il select nella stessa transaction cosi' :

conn.execute ("Begin Transaction")
conn.execute ("insert ...")
set rcs = conn.execute ("select @@IDENTITY")
conn.execute ("Commit Transaction")

In questo modo sono sicuro che se ci fosse un' altro insert prima del mio select, la Identity restituita si riferisce all' insert giusto.

Grazie ancora,
Andrea.

4 messaggi dal 05 luglio 2001
Nel realizzare una procedura simile, ho utilizzato:

conn.execute ("Begin Transaction")
conn.execute ("insert ...")
set rcs = conn.execute ("select @@IDENTITY")
conn.execute ("Commit Transaction")

ma mi da questo errore:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Driver ODBC Microsoft Access] Istruzione SQL non valida. Prevista 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' o 'UPDATE'.

Sai qualcosa in proposito
Grazie Claudio



Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.