Det är onödigt att göra en select
query = "update categories c set ... where id = ... and not exists" &_
" (select 1 from categoires where name = '" & strValue & "' and id <> c.id )"
Databaser & SQLur Databashanterare & SQL
5 svar · 187 visningar · startad av doggelito
har en liten fundering som jag inte har någon smidig lösning på, kanske ni kan hjälpa mig.
jag har en sida med ett textfält som hämtar en text från databasen, låt oss säga: 'Min kategori'
Sen vill jag kunna köra en update på texten och jämföra den mot databasen på två sätt:
1. Skriver jag typ 'Min kategori 2' och den redan finns i databasen så blir det ingen update.
2. men däremot om jag inte ändrar något och låter det stå 'Min kategori' så körs updaten (det kan finnas andra fälts som måste uppdateras).
kan man skriva detta i en ända sqlsats så jag slipper en massa if-taggar som jag har i dagsläget.
nånting hitåt borde den se ut
select name from categories where name = '" & strValue & "' and name <> '" & strValue & "'
...och om denna blir eof så körs en update typ!
Det är onödigt att göra en select
query = "update categories c set ... where id = ... and not exists" &_
" (select 1 from categoires where name = '" & strValue & "' and id <> c.id )"
aha! smart! tack! :bire
går det att få ut ett true/false värde eller liknande från update-strängen?
if update-strängen = false then
response.write "kategorin finns redan!"
else
......
end if
Du kan få tillbaka antalet rader som uppdaterades
query = "update ... "
connect.execute query,rows,128
if rows = 0 then
'inget uppdaterat
end if
Härligt! :birp