No puedo actualizar un registro. Me de vuelve un error que no alcanzo a entender. Intento almacenar en una tabla un SQL
B4X:
Dim Hora, sUpdate As String
Hora = "'" & LblHora.Text & "'"
If BtnPulsado = BtnHoraToma Then
QueryFinal = "Select * From ServReducidos Where TIME(TToma) <= TIME(" & Hora &")" & SpiTexto
End If
If BtnPulsado = BtnHoraDeje Then
QueryFinal = "Select * From ServReducidos Where TIME(TDeje) <= TIME(" & Hora &") AND TIME(TDeje) > '04:00'" & SpiTexto
End If
If BtnPulsado = BtnHoraToma2 Then
QueryFinal = "Select * From ServReducidos Where TIME(TToma) >= TIME(" & Hora &")" & SpiTexto
End If
If BtnPulsado = BtnHoraDeje2 Then
QueryFinal = "Select * From ServReducidos Where TIME(TDeje) >= TIME(" & Hora &")" & SpiTexto
End If
Log(QueryFinal)
sUpdate = "UPDATE Variables SET QueryServiciosReducidos = '" & QueryFinal & "'"
SQLVariables.ExecNonQuery(sUpdate)
Activity.Finish
El error que me sale es el de la imagen que adjunté. Puedo guardar texto en ese campo pero en cuanto le añado la cláusula where me da ese error. Es como si pensara que estoy haciendo un select dentro de un update y me dijera que no es posible hacer las dos cosas a la vez pero yo lo que intento es guardar una una cláusula sql. Por ejemplo si que puedo guardar "select * from Sqlvariables" pero si añado where da el error.
Creo que tienes razón. Es la única explicación que la veo. El tema es que la sentencia que intento guardar funciona si la ejecuto pero me temo que si lo guardo sin las comillas no lo hará. Voy a ver si me las ingenio. Esto me recuerda mucho al delphi o al visual foxpro. Si no recuerdo mal tenías que poner dobles comillas o algo parecido para que lo pasara por texto y no por parte del código.
Al final después de hacer muchísimas pruebas más, tantas como se pueden hacer en la primitiva... Y siguiendo vuestros consejos al final he visto que las dobles comillas funciona tal y como se hacía en pascal. Aquí es doble coma simple entre comillas. En mi caso: