webForumDet fria alternativet

@@IDENTITY -fråga

ASP

9 svar · 569 visningar · startad av Eclipse

Medlem sedan juli 20003 825 inlägg
Frågan#1
Detta fungerar:
set mySQL = Conn.Execute("SELECT @@IDENTITY")
response.redirect "view.as?ID=" & mySQL(0)

Men skulle denna variant fungera!?
set mySQL = Conn.Execute("SELECT intID, strUser, strPassword @@IDENTITY")

Alltså, kan man få ut mer än bara ID med denna variant?

Medlem sedan juni 20019 519 inlägg
#2

Skulle väl vara något i stil med (kan ha fel, ser inte riktigt nyttan att göra på detta sätt):

"SELECT intID, strUser, strPassword From <table> Where intId = (Select @@IDENTITY)"
Medlem sedan dec. 20025 483 inlägg
#3

Eclipse skrev:

Detta fungerar:
set mySQL = Conn.Execute("SELECT @@IDENTITY")
response.redirect "view.as?ID=" & mySQL(0)


Men skulle denna variant fungera!?
set mySQL = Conn.Execute("SELECT intID, strUser, strPassword @@IDENTITY")

Alltså, kan man få ut mer än bara ID med denna variant?

Ja, om du klämmer in ett kommatecken efter strPassword. :)

Medlem sedan juli 20003 825 inlägg
#4

Nej, ingen av er får en bock av mig! Inte just nu!

set mySQL = Conn.Execute("SELECT intID, strDBUser, strDBPassword, @@IDENTITY")

Låt mig förklara: Jag har precis konstaterat att en viss e-postadress finns ledig i systemet, jag har lagt in en ny användaren i databasen och nu ska jag skicka användare + lösen till honom.

strDBUser + strDBPassword (som jag dumt nog inte skrev i originalinlägget) är slumpade och datorgenererade. De är de som användaren ska använda för att verifiera sin e-postadress.

Are you with!?

Medlem sedan juni 20019 519 inlägg
#5

Vad får du för felmeddelande?

Stänger du ditt Conn objekt mellan "INSERT" SQL kommando?

Medlem sedan juli 20003 825 inlägg
#6

Det är ju olika varje gång:

Microsoft JET Database Engine error '80040e10'

No value given for one or more required parameters.

/v1/apply/confirm.asp, line 44

***
set mySQL = Conn.Execute("SELECT intID, strDBUser, strDBPassword, @@IDENTITY")

Microsoft JET Database Engine error '80040e14'

Syntax error. in query expression 'intID = (SELECT @@IDENTITY)'.

/v1/apply/confirm.asp, line 44

***
set mySQL = Conn.Execute("SELECT intID, strDBUser, strDBPassword FROM [users] WHERE intID = (SELECT @@IDENTITY)")

Medlem sedan juni 200032 967 inlägg
#7

Jag hade försökt mig på något sånt här:

SELECT intID, strDBUser, strDBPassword FROM dentabelldetnugäller WHERE intID = @@IDENTITY
Medlem sedan juli 20003 825 inlägg
#8

Microsoft JET Database Engine error '80040e14'

Syntax error (missing operator) in query expression 'intID = @@IDENTITY'.

/v1/apply/confirm.asp, line 44

***
set mySQL = Conn.Execute("SELECT intID, strDBUser, strDBPassword FROM [users] WHERE intID = @@IDENTITY")

Du ser, det är inte lätt... Jag har faktiskt försökt olika varianter! :-)

Medlem sedan juni 200032 967 inlägg
#9

Du kanske måste göra det med två SQL-frågor då. En som hämtar @@identity och sedan en som hämtar datat. Det är lite knäppt, men det är ganska mycket som är knäppt med Access. :)

Medlem sedan juli 20003 825 inlägg
#10

Ja, eller bara skita i massa features och låta det vara som det var innan...

Det är också ett alternativ att beakta!

Tack ni som tog er tid. Tyvärr, inga bockar idag.

265 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)