Problema Con Consulta Sqlite Con La Letra ñ[Resuelto]


Objetivo: Problema Con Consulta Sqlite Con La Letra ñ[Resuelto]
letras

para darle comodidad y velocidad al usuario se me ocurrio poner una abecedario y al hacer un clic sobre una letra mostrar todos los nombres que empiecen con esa letra con la siguiente sql....

sql = Subst("Select * from DatosPersonas where nombrePer like '&1%' order by nombrePer asc", Letra)


ahora bien el problema surge con la letra ñ
si pongo letra ñ minúscula no muestra la Ñ mayúsculas y viceversa

como puedo resolver esto?

última edición por v3ctor el Martes, 20 Septiembre 2016, 13:47; editado 1 vez
Objetivo: Re: Problema Con Consulta Sqlite Con La Letra ñ
bueno también se da el problema con las bocales con tilde

Objetivo: Re: Problema Con Consulta Sqlite Con La Letra ñ
Se me ocurre a «botepronto» añadir una condición «O» de búsqueda, realizando en el primer argumento LCASE y en el segundo UCASE. Ahora mismo no puedo, pero esta tarde intento escribir el código. Algo así como:

Código: [Descargar] [Ocultar]
  1. LetraMay=ucase(Letra)
  2. LetraMin=lcase(Letra)
  3. sql = Subst("Select * from DatosPersonas where nombrePer like '&1%' or nombrePer like '&2%' order by nombrePer asc", LetraMay, LetraMin)
  4.  


Es que no tengo claro si las vocales tildadas y la ñ deben emplearse con la clase STRING o directamente con lcase o ucase.

última edición por Grandamakulo el Martes, 20 Septiembre 2016, 08:41; editado 2 veces
Objetivo: Re: Problema Con Consulta Sqlite Con La Letra ñ
Grandamakulo escribió: [Ver mensaje]
Se me ocurre a «botepronto» añadir una condición «O» de búsqueda, realizando en el primer argumento LCASE y en el segundo UCASE. Ahora mismo no puedo, pero esta tarde intento escribir el código. Algo así como:

Código: [Descargar] [Ocultar]
  1. LetraMay=ucase(Letra)
  2. LetraMin=lcase(Letra)
  3. sql = Subst("Select * from DatosPersonas where nombrePer like '&1%' or nombrePer like '&2%' order by nombrePer asc", LetraMay, LetraMin)
  4.  


Es que no tengo claro si las vocales tildadas y la ñ deben emplearse con la clase STRING o directamente con lcase o ucase.


bueno lo de la ñ quedo resuelto.


LetraMin = String.LCase(Letra)
esto funciona

LetraMin=lcase(Letra)
esto no funciona.

ahora paso a tratar los tildes, es decir cuando a clic en la A... deben aparecer

A
a
á
Á

saludos y gracias, cuando tenga novedades las escribo.

Objetivo: Re: Problema Con Consulta Sqlite Con La Letra ñ
muchas gracias por tu ayuda Grandamakulo

tema resuelto, dejo rutina para ejemplo....

Public Sub FiltrarPersonasPorLetra(Letra As String) As Result
Dim r As Result
Dim sql, sql2, LetraMay, LetraMin, TildeMin, TildeMay As String
Dim sqlLarga As Boolean

LetraMay = UCase(Letra)
LetraMin = String.LCase(Letra)

Select Case Letra
Case "A"
TildeMin = "á"
TildeMay = "Á"
sqlLarga = True
Case "E"
TildeMin = "é"
TildeMay = "É"
sqlLarga = True
Case "I"
TildeMin = "í"
TildeMay = "Í"
sqlLarga = True
Case "O"
TildeMin = "ó"
TildeMay = "Ó"
sqlLarga = True
Case "U"
TildeMin = "ú"
TildeMay = "Ú"
sqlLarga = True
Case Else

End Select

If sqlLarga Then
sql2 = "nombrePer like '&1%' or nombrePer like '&2%' or nombrePer like '&3%' or nombrePer like '&4%' order by nombrePer asc"
sql = Subst("Select * from DatosPersonas where " & sql2, LetraMay, LetraMin, TildeMin, TildeMay)
Else
sql = Subst("Select * from DatosPersonas where nombrePer like '&1%' or nombrePer like '&2%' order by nombrePer asc", LetraMay, LetraMin)
Endif

r = fPersonas.CX_personas.Coneccion.Exec(sql)

Return r

End

Objetivo: Re: Problema Con Consulta Sqlite Con La Letra ñ[Resuelto]
Gracias V3ctor, por compartir la solución que has encontrado.


Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 7.4784s (PHP: -97% SQL: 197%)
Consultas SQL: 47 - Debug off - GZIP Activado