09. oktober 2001 - 18:37Der er
9 kommentarer og 2 løsninger
udtræk af autonummer
Jeg har to tabeller. Den ene tabel a har en primærnøgle a.prim(identity(1,1)), og tabel b har en fremmednøgle b.frem der referer til a.prim.
Jeg skal nu indsætte noget i begge tabeller fra ASP. Først indsætter jeg noget i tabel a, og bagefter drager jeg a.prim ud(pga. identity(1,1)) for at indsætte det i b.
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Dim conn, rs, pKey Set conn = Server.CreateObject(\"ADODB.Connection\") Set rs = Server.CreateObject(\"ADODB.Recordset\") conn.open(your_conn_sting_here) conn.BeginTrans
rs.open(\"INSERT INTO a (SomeField) VALUES (\'Some Value\')\", conn) rs.Close() rs.open(\"SELECT Max(a.prim) AS pKey FROM a\") pKey = rs(\"pKey\").value rs.Close() conn.execute(\"INSERT INTO b (MyFKey) VALUES (\" & pKey & \")\")
Public Function testTRANSACTION() Conn.Execute \"CREATE TABLE ProAccess1 (ID IDENTITY CONSTRAINT PrimaryKey PRIMARY KEY, Navn VARCHAR(50))\" Conn.Execute \"CREATE TABLE ProAccess2 (ID Long, Tidspunkt DATETIME, TEST IDENTITY CONSTRAINT PrimaryKey PRIMARY KEY)\" Conn.Execute \"BEGIN TRANSACTION\" Conn.Execute \"INSERT INTO ProAccess1 (Navn) VALUES (\'ProAccess\')\" Conn.Execute \"INSERT INTO ProAccess2 (ID, Tidspunkt) VALUES (@@IDENTITY, Now())\" Conn.Execute \"COMMIT TRANSACTION\" End Function
Hvor du selvfølgelig har din Connection opsat... (Conn)
Du kan altså bruge @@IDENTITY til at \"holde\" værdien for seneste autonummer...
ja, jeg har ikke lige fået kigget, men vil gøre det inden længe...
proaccess... jeg er mest til dit eksempel, men det er desværre komplikationer ved det... 1. Hvordan kalder jeg en stored procedure fra en ASP sætning, og hvordan ser jeg på resultatet(om det er en rollback/commit). Jeg skal nemlig sige dig at jeg samtidig med dette uploader en fil, og derfor vil jeg gerne vide om jeg skal slette den igen eller bare lade den ligge...!!!
Så er der vist ikke mere jeg kan gøre... Måske skulle du selv svare på dette... og så oprette et spg. mere, hvor Terry og Benny kunne komme på banen...
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.