webForumDet fria alternativet

Select

5 svar · 166 visningar · startad av aleborg

aleborgMedlem sedan jan. 20013 341 inlägg
#1

Vad är fel?

"SELECT *  FROM (DevUsers, Users) WHERE (DevUsers.Username =  '" + Replace(rsLogin__strUsername, "'", "''") + "' AND DevUsers.Password = '" + Replace(rsLogin__strPassword, "'", "''") + "') Or (Users.Username =  '" + Replace(rsLogin__strUsername, "'", "''") + "' AND Users.Password = '" + Replace(rsLogin__strPassword, "'", "''") + "')"

[Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near ','.

/default.asp, line 32

line 32 är öppningen av select-satsen

------------------
Data-Doktorn
Min egen musik!
Mitt coverband

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Om du tar bort parenteserna vid from

"SELECT * FROM DevUsers, Users WHERE (DevUsers.Username = '" + Replace(rsLogin__strUsername, "'", "''") + "' AND DevUsers.Password = '" + Replace(rsLogin__strPassword, "'", "''") + "') Or (Users.Username = '" + Replace(rsLogin__strUsername, "'", "''") + "' AND Users.Password = '" + Replace(rsLogin__strPassword, "'", "''") + "')"

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 06 sep 2001]

aleborgMedlem sedan jan. 20013 341 inlägg
#3

problemet då är att den inte hittar rätt :(

Koden ska leta i två olika databaser efter användarnamn och lösenord men den hittar inte nån match när jag försöker logga in, och jag vet att jag använder rätt uppgifter

------------------
Data-Doktorn
Min egen musik!
Mitt coverband

aleborgMedlem sedan jan. 20013 341 inlägg
#4

Man kanske borde använda Join i det här fallet?

------------------
Data-Doktorn
Min egen musik!
Mitt coverband

LarsGMedlem sedan dec. 200012 464 inlägg
#5

Att du inte får någon match beror nog på att du inte får in rätta värdena. Hur ser select-frågan ut om du skriver ut den?

Om du vill söka i två olika tabeller så borde du skriva frågan som en union istället.

Om users och devusers innehåller samma kolumner så går det bra annars så får du anpassa select-listorna så att de stämmer

sql = "select * from devusers " & _
" where username = '" & _
Replace(rsLogin__strUsername, "'", "''") & _
"' AND Password = '" & _
 Replace(rsLogin__strPassword, "'", "''") & _
"' union " & _
select * from users " & _
" where username = '" & _
Replace(rsLogin__strUsername, "'", "''") & _
"' AND Password = '" & _
 Replace(rsLogin__strPassword, "'", "''") & _
"'"

OT:

Vad skall hända om en användare finns i båda tabellerna?

------------------
essentitia preter non sans multiplicandum

aleborgMedlem sedan jan. 20013 341 inlägg
#6

Jobbet envisas med att ha två databaser med användare, "devusers" är gjord för sajten jag jobbar på och sen har vi "users" som är gjord för en annan del. Och dom vill att dom som finns i "users" ska kunna logga in på sajten också.

------------------
Data-Doktorn
Min egen musik!
Mitt coverband

135 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)