Visual Basic - Visual Basic - Error de sintaxis (falta operador) en la expresión de consulta

Life is soft - evento anual de software empresarial
 
Vista:

Visual Basic - Error de sintaxis (falta operador) en la expresión de consulta

Publicado por Jesús (2 intervenciones) el 05/11/2020 01:42:48
Buenas. Quería consultarles acerca del siguiente error: Se ha producido el error '3075' en tiempo de ejecución
Error de sintaxis (falta operador) en la expresión 'Fecha de nacimiento like 'o*".
Intento consultar por fecha de nacimiento y me salta este error

Nota: No se mucho acerca de la programación y es para una tarea.
Muchas gracias.

1
2
3
4
5
Private Sub txtSearch_AfterUpdate()
    Dim sql As String
    sql = "select * from consultacliente where " & Me.cmbCampo & " like '" & Me.txtSearch.Text & "*'"
    Me.HojadeDatosdeClientes.Form.RecordSource = sql
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Visual Basic - Error de sintaxis (falta operador) en la expresión de consulta

Publicado por gilman (359 intervenciones) el 05/11/2020 08:05:46
Esto no es VB es SQL, pero bueno.
El problema es que el nombre del campo tiene espacios, algo nada recomendable, prueba a poner el nombre del campo entre corchetes, si no recuerdo mal es como se hacía en Access, en otras BDs no lo sé, pero creo que también debería funcionar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 355
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Visual Basic - Error de sintaxis (falta operador) en la expresión de consulta

Publicado por raul (160 intervenciones) el 05/11/2020 15:33:56
En principio la consulta no deveria funcionar para ningun campo. Veras...

1- "Fecha de nacimiento" no es un nombre para un campo lo ideal seria Fecha_de_nacimiento. Ahora si empleas Access creo que el SQL-Querry tolera la sintaxis

sql = "select * from consultacliente where [Fecha de nacimiento] like

2- El tema de los comodines "*?"; ni SQL-QUERRY (ACCESS) ni SQL-TRANSACT (SQL-SERVER) los toleran y para emplearlos se emplean equivalencias * = % y ? = _ o sea que "Campo like '*' " se deveria escribir como "Campo Like '%'".

3- para los campos con fechas el tema es distinto. Ya que en Access las fecha se incluyen entre simbolos de numero o sea #2020/11/05# o sea que el formato de fecha que se emplea es el americano yyyy/mm/dd sin embargo en SQL-SERVER las fechas se manejan como cadenas o sea que se incluyen entre comillas simples '2020/11/05' por defecto; aunque se puede modificar antecediendo la intrucción dateformat DMY o sea

SQL = "set dateformat dmy select * from tabla where campo_fecha = '05/11/2020'"

Espero te ayude en algo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Visual Basic - Error de sintaxis (falta operador) en la expresión de consulta

Publicado por Jesús (2 intervenciones) el 05/11/2020 16:07:30
Ya lo he solucionado, muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar