ummm Si el campo valor es de tipo texto, seria asi:
SQL = "UPDATE pizarra SET valor = '" & valor & "' where valor = '" & valor & "';"
O sea, enmarcamos el valor del campo entre comillas simples. De todas formas, la logica de la sentencia SQL es extraña:
SELECT * FROM pizarra WHERE valor = '" & valor & "'"
Y luego le haces un UPDATE con el mismo valor.
Digamos que valor = '1'. Obtenemos una tabla con 20 registros con valor = '1' y luego lo actualizamos con el mismo valor, no cambiamos nada. Lo lógico es hacer la actualizacion en base a otro parámetro ( otro campo de la tabla más clave y unico) como el nombre:
lero [email protected] blabla 0
Nemo [email protected] blablabla 1
SELECT * FROM pizarra WHERE nombre = '" & nombre & "'"
Luego actualizamos el campo de ese registro:
valor = CInt(len(Request.Form("checkbox")) > 0) * -1
set con = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.RecordSet")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("mes/galerias/galerias.mdb")
SQL = "SELECT * FROM pizarra WHERE nombre = '" & nombre & "'"
rs.Open SQL,con,3,3
' Si quieres hacerlo asi:
if not rs.eof then
rs("valor") = CStr(valor)
rs.update
rs.Close
set rs=nothing
set con=nothing
Espero que esto te sirva.
Un saludo