Foros del Web » Programando para Internet » ASP Clásico »

Busqueda en base de datos.... validar palabras con acentos?

Estas en el tema de Busqueda en base de datos.... validar palabras con acentos? en el foro de ASP Clásico en Foros del Web. como saber cuando una palabra es homonima de otra, por ejemplo: López <> lopez, por el acento como puediera evaluar esta situacion, ya que si ...
  #1 (permalink)  
Antiguo 06/03/2007, 17:45
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 11 meses
Puntos: 88
Busqueda en base de datos.... validar palabras con acentos?

como saber cuando una palabra es homonima de otra, por ejemplo:

López <> lopez, por el acento


como puediera evaluar esta situacion, ya que si el usuario escribe lopez, esta sentencia excluiria los que contenga el acento, o en su defecto a la inversa....

alguna opcion compañeros??
  #2 (permalink)  
Antiguo 06/03/2007, 22:03
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años
Puntos: 535
Re: Busqueda en base de datos.... validar palabras con acentos?

creo que preguntarte "qué base de datos usás" es una buena pregunta para llegar a un mejor resultado en la respuesta... también creo que me enredé un poco :)
__________________
...___...
  #3 (permalink)  
Antiguo 06/03/2007, 23:48
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 11 meses
Puntos: 88
Re: Busqueda en base de datos.... validar palabras con acentos?

estoy utilizando ACCESS 2003. he aki el como busco el criterio
SELECT * FROM tabla1 WHERE nombre = sebusca
muy agradecido por la ayuda que pueda recibir
  #4 (permalink)  
Antiguo 07/03/2007, 03:48
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 21 años, 2 meses
Puntos: 144
Re: Busqueda en base de datos.... validar palabras con acentos?

Prueba esto:
Código:
Function Acentos(texto)
 Dim ComponerTexto
 For x = 1 To Len(texto)
  ComponerTexto = Mid(texto, x, 1)
  Select Case ComponerTexto
   Case "a", "à", "á", "À", "Á"
    Acentos = Acentos & "[aàáâÀÁÂ]"
   Case "e", "é", "è", "È", "É"
    Acentos = Acentos & "[eéèêÈÉÊ]"
   Case "i", "ì", "í", "Ì", "Í"
    Acentos = Acentos & "[iìíîÌÍÎ]"
   Case "o", "ò", "ó", "Ò", "Ó"
    Acentos = Acentos & "[oòóôÒÓÔ]"
   Case "u", "ù", "ú", "Ù", "Ú"
    Acentos = Acentos & "[uùúûÙÚÛ]"
   Case Else
    Acentos = Acentos & ComponerTexto
  End Select
 Next
End Function
Y la sentencia SQL, sería más o menos así:
Código:
palabra_a_buscar = trim(request.form("palabra_a_buscar"))
SQL= "SELECT campo1, campo2, campo3 FROM tu_tabla WHERE campo1 LIKE '%" & lCase(Acentos(palabra_a_buscar)) & "%' ORDER BY campo1 ASC"
Salu2
  #5 (permalink)  
Antiguo 07/03/2007, 09:58
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 11 meses
Puntos: 88
Re: Busqueda en base de datos.... validar palabras con acentos?

quedo excelente, muchas gracias 3pies, exacto al problema
  #6 (permalink)  
Antiguo 15/10/2009, 06:03
 
Fecha de Ingreso: octubre-2009
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Hola, soy nuevo en el foro.

yo estoy teniendo el mismo problema en Access 2003. Esta solución no la pude aplicar porque no entiendo mucho de programación y no sé dónde tengo que poner cada cósa y cómo.

Tengo un formulario con un cuadro combinado con la siguiente sentencia en "Origen de la fila":

SELECT ALUMNOS.NOMBRE FROM ALUMNOS ORDER BY ALUMNOS.NOMBRE;

El cuadro combinado lo tengo sin desplegar y con autorellenar, de manera que si uno escribe Mar, va al lugar de la lista donde estan los nombres que empiezan con Mar, digamos que existen Margarita y Maria, entonces al Mar solo le falta agregar la "i" para que encuentre el nombre.

Lo que necesito es que si uno pone por ejemplo Marí, el cuadro combinado busque no solamente Marí sino también Mari, sin acento. Porque sino no me encuentra el registro porque no está cargado con acento en la tabla. Básicamente que discrimine los acentos.
Es posible esto?

Muchas gracias!
  #7 (permalink)  
Antiguo 15/10/2009, 06:27
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 1 mes
Puntos: 126
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Hola

En tu caso haces un replace del carácter acentuado antes de hacer la consulta.

Cita:
Public Function Limpiar(strlimpiar,modolimpiar)
str = trim(strlimpiar)
Select Case modolimpiar
Case 0:
str = lcase(str)
str = replace(str,"á","a")
....
Case Else
str = strlimpiar
End Select
Limpiar = str
End Function

sinacento = Limpiar(request.form("campo"), 0)

SELECT ALUMNOS.NOMBRE FROM ALUMNOS where nombre like '"&sinacento&"% ORDER BY ALUMNOS.NOMBRE;
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #8 (permalink)  
Antiguo 15/10/2009, 06:55
 
Fecha de Ingreso: octubre-2009
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Hola, gracias por la respuesta!

Perdón, pero no terminé de entender, se me complica un poco cuando se trata de código.

ese código lo pongo en cualquier parte del código de la base de datos?

hago una aclaración: la búsqueda no la hago con una consulta, sino con un cuadro combinado directamente en el formualario, que se conecta con la tabla y busca los registros.

Gracias de nuevo
  #9 (permalink)  
Antiguo 15/10/2009, 07:08
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 1 mes
Puntos: 126
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Hola

No leí

Te has equivocado de foro. Aunque hace ya unos años que no trabajo con access, creo que lo que tu haces es hacer la consulta en la misma bd. Eso implica que no puedes usar ninguno de los códigos, solo puedes hacer una consulta tan simple como la que estás usando. Quizás aquí puedan ayudarte

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #10 (permalink)  
Antiguo 15/10/2009, 07:15
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 1 mes
Puntos: 146
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Jonsi

Primero, bienvenido al foro

Segundo, por favor, trata de no revivir temas antiguos con solicitudes diferentes o que mensajes que no aporten al tema original del usuario. Esto es básicamente para que aquellos que usen el buscador encuentren temas relativamente limpios, sin diferentes dudas mezcladas.

Por lo pronto este tema se cierra

Pero ahora ... antes de que abras un tema nuevo con tu duda específica ... trata de aclarar en el nuevo mensaje lo siguiente:

Si la respuesta de 3pies a Shiryu_Libra no la pudiste aplicar por que no entiendes de códigos, entonces ¿cómo imaginas que si podrás aplicar cualquier otra respuesta que te demos?

Otra cosa ... ¿a qué le llamas cuadro combinado?,¿ estas usando ASP o solo Access?
  #11 (permalink)  
Antiguo 15/10/2009, 10:44
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años
Puntos: 535
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Está usando Access "a secas", Myakire
Yo creo que el foro adecuado es http://www.forosdelweb.com/f90/ (ofimática).
Lo traslado para allí (espero no mandarme mocos en la separación de las respuestas y creación de un nuevo tema)
__________________
...___...
  #12 (permalink)  
Antiguo 15/10/2009, 11:08
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años
Puntos: 535
Respuesta: Busqueda en base de datos.... validar palabras con acentos?

Mmm... no, Jonsi, mejor planteá tu duda desde el inicio en el foro de ofimática.
Un saludo.
__________________
...___...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 22:58.