Jag har en sida som hämtar information från ett formulär på föregånde sida och lägger in informationen i en ny post i en databas med hjälp av INSERT INTO och visar en bekräftelse på att posten lades till. I databasen finns ett räknar-fält som jag bl a brukar använda för att öppna en specifik post på andra sidor. testa med SELECT ID = @@IDENTITY Glömde.. för att det skall fungera måste du ha SQL-satsen är ganska lång så jag har lagt den i en variabel som sedan exekveras. Ska SELECT ID = @@IDENTITY stå med i SQL-satsen eller ska det stå efter att den exekverats? Hej efter att den frågan exekveras.. dvs när du har lagt in värdena.. annars kan den ju inte få ut id numret på det du precis lagt in... flåt.. det skall stå med i sql satsen.. läser som en kratta idag.. ;) Om det är SQL-Server lägger du till SELECT @@IDENTITY sist i din SQL-sats, är det Access får du öppna ett nytt recordset med den satsen. Resultatet får du genom rs(0).Ta reda på id-numret
Jag skulle nu vilja ha en länk på sidan som öppnar sida med den nya posten i ett eget fönster för utskrift, men jag vet inte hur jag ska kunna ta reda på vilket nummer den nya posten fick då den lades in.
Kan någon hjälpa mig?
/ÅSv: Ta reda på id-numret
rs.MoveLast
ID = rs("fltID")
efter att du har lagt in det i databasen (& innan du stänger den).
Och skicka med den när du Response.Redirectar.Sv: Ta reda på id-numret
Response.Write ID
Alltså:
INSERT INTO tblXXX (fält, fält)
VALUES (värde, värde)
SELECT ID = @@IDENTITYSv: Ta reda på id-numret
<!-- #include file="adovbs.inc" -->
överset på sidan.. dock under <%@Language=VBScript%>
den alltid bra att ha med.. Sv: Ta reda på id-numret
Sv: Ta reda på id-numret
Om det är access så gör som winter sa eller helt enkelt kör en fråga direkt efter du skapa posten som hämtar högsta id numret (det blir fel om 2 gör det exakt samtidgt) (finns en lösning på det med om det behövs)
Om du använder MSSQl server så kan du använda @@IDENTITY
>><!-- #include file="adovbs.inc" -->
>> <%@Language=VBScript%>
Att använda adovbs är inte bra ur prestandasynpunkt (sök på forumet om den för tidigare disuktioner)
<%@Language=VBScript%>
Kan vara bra men tar även den kraft, (dom flresta IIS maskiner är instälda på Vbscript som default)
/jonberSv: Ta reda på id-numret
läs även det jonber säger även om den kraften de tar är obefintlig.. ;) Om du förstås inte sitter på en 286 som försöker tugga W2K Advanced Server.... ;) hehe
Mitt exempel är till MSSQL.... finns det företag som fortfarande envisas med Access?? ;)Sv: Ta reda på id-numret
Sv: Ta reda på id-numret
/Johan