** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y Otros sistemas
  Mensajes nuevos Mensajes nuevos RSS - Reemplazar tildes en oracle
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoReemplazar tildes en oracle

 Responder Responder
Autor
Mensaje
Maialen Ver desplegable
Nuevo
Nuevo


Unido: 02/Febrero/2012
Estado: Sin conexión
Puntos: 48
Enlace directo a este mensaje Tema: Reemplazar tildes en oracle
    Enviado: 09/Marzo/2012 a las 09:00
Hola;
Necesito ayuda. Estoy haciendo una formulario en access en el cual me aparece un lista de usuarios. Para hacer la búsqueda de usuarios tengo hecho un apartado de búsqueda. El problema es que hay nombres de usuarios que tienen tilde y lo que quiero es que si en la casilla de búsqueda pongo un nombre sin la tilde me muestre el usuario con tilde.

Como podría hacerlo?

Gracias;
Arriba
lbauluz Ver desplegable
Administrador
Administrador
Avatar

Unido: 29/Marzo/2005
Localización: Prisión Brieva
Estado: Sin conexión
Puntos: 3230
Enlace directo a este mensaje Enviado: 09/Marzo/2012 a las 09:09
¿Pero en Access o en Oracle?

Luis
Those are my principles, and if you don't like them... well, I have others. Groucho Marx
Arriba
Maialen Ver desplegable
Nuevo
Nuevo


Unido: 02/Febrero/2012
Estado: Sin conexión
Puntos: 48
Enlace directo a este mensaje Enviado: 09/Marzo/2012 a las 09:34
Los formularios están echos en access pero estoy utilizando ORACLE para bbdd
Arriba
Tikimore Ver desplegable
Moderador
Moderador


Unido: 02/Enero/2008
Localización: España
Estado: Sin conexión
Puntos: 1519
Enlace directo a este mensaje Enviado: 09/Marzo/2012 a las 21:47
Hola.
Yo lo que haría sería pasar ambos a valores a valores sin tilde y luego compararlos.
Para quitarles las tildes bastaría con un "Replace".
 
Un saludo.
Arriba
Maialen Ver desplegable
Nuevo
Nuevo


Unido: 02/Febrero/2012
Estado: Sin conexión
Puntos: 48
Enlace directo a este mensaje Enviado: 12/Marzo/2012 a las 09:42
Ya si eso si con el Replace lo haría pero cada vez que tenga que mirar algo que tengo que poner por ejemplo: Replace(José,'ó,é','o,e')
Es que no sabría como hacerlo ya que la tilde puede estar en diferentes vocales.
Arriba
Maialen Ver desplegable
Nuevo
Nuevo


Unido: 02/Febrero/2012
Estado: Sin conexión
Puntos: 48
Enlace directo a este mensaje Enviado: 12/Marzo/2012 a las 10:16
He encontrado esto pero estoy programando en visual basic en access y trabajo con una base de datos ORCLE y no me vale no sabría como ponerlo para que funcione ya que no se como se declaran matrices en visual basic.

Dim ConAcento() AS String = {"á","é","í","ó","ú","Á","É","Í","Ó","Ú"}
Dim SinAcento() AS String = {"a","e","i","o","u","A","E","I","O","U"}
Dim numCaracteres As Integer

numCaracteres = caracteresConAcento.Length

For i as integer to numCaracteres -1
&&&&&&& TextBox1.Text = Replace(TextBox1.Text,ConAcento(i),SinAcento(i))
Next

Editado por Maialen - 12/Marzo/2012 a las 11:46
Arriba
raipon Ver desplegable
Moderador
Moderador


Unido: 10/Diciembre/2004
Localización: Desconocida
Estado: Sin conexión
Puntos: 4005
Enlace directo a este mensaje Enviado: 12/Marzo/2012 a las 12:07
Otra alternativa (desde el lado servidor) :
Ahora no tengo ninguna bd oracle accesible para probar, pero creo que la función de oracle NLSSORT(Valor, Collation) pordria solucionar tu problema :
SELECT *
FROM
MiTabla
WHERE NLSSORT(MiCampo, 'NLS_SORT = nls_sort=binary_ai') = NLSSORT(MiValor, 'NLS_SORT = nls_sort=binary_ai')
 
Adios, un saludo.


Editado por raipon - 12/Marzo/2012 a las 12:08
Ramon desde Terrassa.

Mi blog
Arriba
Maialen Ver desplegable
Nuevo
Nuevo


Unido: 02/Febrero/2012
Estado: Sin conexión
Puntos: 48
Enlace directo a este mensaje Enviado: 12/Marzo/2012 a las 14:28
Me sirve pero acabo de conseguirlo de otra manera después de estar mucho tiempo buscando. Gracias a todos por echarme una mano

Os dejo la solución de lo que e puesto yo.

SELECT id, nombre
FROM tabla
WHERE TRANSLATE(UPPER(nombre),'ÁÉÍÓÚ','AEIOU') LIKE TRANSLATE(UPPER('%nombre%'),'ÁÉÍÓÚ','AEIOU') ORDER BY nombre;

Así ya esta solucionado,
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable