webForumDet fria alternativet

uttryck i sql

9 svar · 133 visningar · startad av Macce

MacceMedlem sedan apr. 2001425 inlägg
#1

Jag har lite probbs...
när jag redigerar en användare i mitt lösenordssystem får han inte ta samma anv.namn som nån annan...
men när jag ska redigera en användare och trycker på spara måste jag ha en sql sats som kollar alla poster utom den jag redigerar...
typ:
sql = "SELECT * FROM users WHERE userid is not '" & varuserid & "'"
eller

sql = "SELECT * FROM users WHERE userid <>'" & varuserid & "'"

Hur göra....

WibergMedlem sedan juni 20003 169 inlägg
#2

SQL = "SELECT * FROM users WHERE userid = '" & varuserid & "'"

if rs.EOF then

'namnet finns inte i databasen

else

'namnet finns i databasen

end if

------------------
"Datorer behöver i framtiden inte väga mer än 1,5 ton."
Popular Mechanics, 1949

icaaqMedlem sedan okt. 20005 273 inlägg
#3

Jag hade gjort så här:

sql = "SELECT * FROM users WHERE userid ='" & varuserid & "'"
Set ObjRecSet = Objconn.execute

If Not ObjRecSet.EOF Then
Response.Write "userid finns redan"
Else
'lägg in datat som ska läggas in
End If

------------------
ibland tror jag att jag kan lite för lite än vad jag kan ....

icaaqMedlem sedan okt. 20005 273 inlägg
#4

jag läste frågan lite bättre:

Jag har lite probbs...
när jag redigerar en användare i mitt lösenordssystem får han inte ta samma anv.namn som nån annan...

jag fattar inte ett smack vad du menar ;)

vad är problemet igentligen?? :q

------------------
ibland tror jag att jag kan lite för lite än vad jag kan ....

MacceMedlem sedan apr. 2001425 inlägg
#5

ehh.
Ovanstående använder jag redan...
Det är ju så att den posten jag redigerar kommer ju från databasen, alltså kommer det alltid att hitta minst en dublett när jag vill uppdatera databasen. Om jag väljer att inte redigera just anv.namnet utan kanske epostadress eller likn.
Förstår ni nu ???

MacceMedlem sedan apr. 2001425 inlägg
#6

Det jag undrar över är bara hur jag ska skriva i min sql-sträng
WHERE userid NOT " & varuserid & "'"

alltså vända på uttrycket WHERE

bara kolla alla andra poster än den jag redigerar....

Ä ni mä...

MacceMedlem sedan apr. 2001425 inlägg
#7

Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i frågeuttrycket 'userid not '''.
user_update.asp, line 56

LarsGMedlem sedan dec. 200012 464 inlägg
#8

Du har alltså en variabel som innehåller det nya namnet (username) och sen så har du något id-nummber (userid) för den person som du ändrar?

I så fall


set rs = conn.execute("select 1 from users where id <> " & userid and username = '" & username & "'"
if not rs.eof then
   response.write "Upptaget <br>"
else
'update database
end if

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

MacceMedlem sedan apr. 2001425 inlägg
#9

Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03EA)
Syntaxfel
/meny4/inc_files/inc_user_update.asp, line 52, column 70
sql = "SELECT * FROM users WHERE userid <> " & userid and varuserid = '" & userid & "'"
---------------------------------------------------------------------^

Vet inte om jag förstod rätt men nåt är fel...

Jag kan lösa det hela med if sats men vill gärna göra det "snyggare"

[Redigerat av Macce den 08 jun 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#10

Lite stressad i dag tydligen

set rs = conn.execute("select 1 from users where id <> " & userid [b]& " [/b] and username = '" & username & "'"
if not rs.eof then
response.write "Upptaget <br>"
else
'update database
end if

r:tydligen

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

[Redigerat av LarsG den 08 jun 2001]

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