Sessionid kommer du åt via session-objektet.
<%
id = Session.SessionID
%>
------------------
essentitia preter non sans multiplicandum
23 svar · 603 visningar · startad av Janspeed · sida 2 av 2
Hejsan! Undrar om det är någon som vet ett bra sätt att generera ett unikt ordernummer som ska läggas till en beställning? Jag sitter och spekulerar över mina alternativ. Tanken är att nummret ska skickas med i ett mail samt visas på sidan när beställningen bekräftats för kunden. Än så länge har jag kommit fram till 3 st alternativ. Det första är att lagra senaste ordernummret i en databas och
Läs frågan i sin helhet →Sessionid kommer du åt via session-objektet.
<%
id = Session.SessionID
%>
------------------
essentitia preter non sans multiplicandum
Aha. Så servern loggar alla besökare i Sessions oavsett?
Jättehyggligt alla som hjälper till. Jag ska strax lägga ner och inte fråga mer. :)
Tänkte att jag skulle pröva ett test till med lagrade procedurer i SQL Server. Är det någon som vet om det går att generera datum direkt i en lagrad procedur eller om jag måste hämta det utifrån i en parameter?
CREATE PROCEDURE spInsOrder
@Kampanjkod VARCHAR(10),
@OrderText TEXT,
@Produkt VARCHAR(50),
@Epost VARCHAR(50)
AS
INSERT INTO tblOrder2(Kampanjkod, OrderText, Datum, Produkt, Epost) VALUES(@Kampanjkod, @OrderText, Date(), @Produkt, @Epost)
RETURN @@IDENTITY
GO
Är det också någon som vet hur jag hämtar IDENTITY värdet som returneras? Måste jag ha en kolumn som heter IDENTITY också? Kan jag göra så här?
SQL = "lagrad_procedur"
Set rs = Conn.Execute(SQL)
RefNr = rs("IDENTITY")
/JANspeed
För att få tag på datum i sql-server kan du använda någon av funktionerna
current_timestamp
eller
getdate()
(Dom är helt synonyma men current_timestamp är den som är definierad i ANSI standarden)
Om du använder return i en procedure så måste du använda ett command-objekt för att få tag på värdet.
Det är enklare om du skriver
select @@identity as identity
så kan du göra som du skrivit nu.
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 09 nov 2001]
Vad använder man RETURN till i lagrade procedurer då? Snodde det från en annan procedur som låg och skräpade.
Nu ser min lagrade procedur ut så här:
CREATE PROCEDURE spOrderIns
@Kampanjkod VARCHAR(10),
@OrderText TEXT,
@Produkt VARCHAR(50),
@Epost VARCHAR(50)
AS
INSERT INTO tblOrder2(Kampanjkod, OrderText, Datum, Produkt, Epost) VALUES(@Kampanjkod, @OrderText, current_timestamp, @Produkt, @Epost)
SELECT @@IDENTITY AS ID
GO
Och den verkar fungera himla bra. Tiderna låg på lägre nivå än till och med hämta nummret från en fil. current_timestamp gjorde susen. Något mer jag bör tänka på? :)