Avatar billede a_c Nybegynder
04. oktober 2001 - 17:12 Der er 4 kommentarer og
1 løsning

@@identity returnerer ingenting

Jeg arbejder op mod en MS SQL og skal lave en insert i flere tabeller hvor jeg har brug for at få fat i det sidste autogenererede ID.
Jeg har læst at man kan
bruge @@identity til det og det virker også fint i Query analyzeren , men når jeg kører dette fra min ASP side returnerer @@identity ingenting.
HVORFOR?
Min første Insert kører igennem...

QStr=\"insert into Needle(type,number) values (\'\" & id & \"\',\'\" & nr & \"\') \"
   
    Result.Open QStr
       
    \'get last autoincremented ID
    Qstr=\"select @@identity as l from Needle\"
    Result.Open Qstr

Result er erklæret som et recordset!

Jeg smutter nu men er tilbage imorgen tidlig.
På fårhånd tak.
A_C
Avatar billede a_c Nybegynder
04. oktober 2001 - 17:13 #1
fårhånd=forhånd
:)
Avatar billede tmceu Praktikant
04. oktober 2001 - 22:08 #2
Prøv med dette i stedet.

QStr=\"insert into Needle(type,number) values (\'\" & id & \"\',\'\" & nr & \"\');select @@identity as l from Needle\"

Set Result = Conn.Execute(QStr)
Set Result = Result.NextRecordset

response.write \"@@IDENTITY: \" & Result(\"I\")

Du kan kun bruge @@identity fra samme connection, og jeg mener at når du anvender .open på samme recordset objekt, bliver der foretaget en implicit close imellem de 2 .open.
Avatar billede a_c Nybegynder
05. oktober 2001 - 07:38 #3
tmceu>> Det lyder sgu rigtigt det tester jeg lige.
A_C
Avatar billede a_c Nybegynder
05. oktober 2001 - 08:34 #4
Hmmm,
løsningen som du skriver virker godt nok ikke,
jeg får :
Current provider does not support returning multiple recordsets from a single execution

Men jeg ændrede lige et par småting i denne del:
Set Result = Conn.Execute(QStr)
Set Result = Result.NextRecordset

Så funkede det. :)

A_C


Avatar billede tmceu Praktikant
05. oktober 2001 - 15:42 #5
Underligt. MS SQL kan normalt godt returnere flere recordsets, jeg bruger det hver eneste dag både på 7.0 og 2000. Men godt du fik det til at køre alligevel :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester