PDA

Ver la Versión Completa : guardar datos en minusculas


fernando1973
08-05-2007, 15:29:15
hola gente aqui otra vez necesitando de una mano, tengo una base echa en mysql el problema me surge cuando realiza las busqueda ya que distingue entre mayusculas y minisculas no me encuentra el registro por que esta en minuscula y la busqueda la hago en mayusculas, o cuando el registro 'apellido' tiene un nombre asi 'Gomez' pregunto? como podria hacer para controlar cuando me grabe los datos a la base que lo haga todo en minusculas o en su defecto todo en mayusculas, desde ya muchas gracias.

Lepe
08-05-2007, 15:40:18
Firebird, en su última versión, tiene un cotejamiento (collate) que puede realizar búsquedas sin distinción de mayúsculas, deberías informarte por ese lado en MySql.

La forma base para búsquedas (nada eficiente, por supuesto)

select nombre from cliente
where upper(nombre) = 'PEPE';

upper y lower son funciones estándar del sql. (cuidado con las tildes)

Saludos

karlaoax
08-05-2007, 19:05:52
Es correcta la aprecioacion de Firebird.

Si lo que quieres ahora es que al momento de guardar tus registros en tu BD, si lo haces por edio de Edits, en sus propiedades viene la siguiente opcion:

Charcase: UpperCase // Mayusculas
LowerCase // Minusculas
Normal

prueba con esas opciones al momento de guardar.

Karla :p

roman
09-05-2007, 08:24:27
Yo uso el cotejamiento latin1_spanish_ci en MySQL que permite hacer búsquedas sin distinción de mayúsculas y minúsculas. Incluso puedes buscar con acentos o sin ellos indistintamente. Usa eso, en lugarde forzar los datos a uno u otro formato.

// Saludos

fernando1973
09-05-2007, 16:44:08
gracias a todos por el momento lo solucione con la sugerencia de karla pero voy a interiorizarme con la busquedas cotejamiento. gracias por las respuestas.

lucasarts_18
09-05-2007, 17:45:58
Roman, ¿donde puedo encontrar información de los "collation"?, en el sitio de mysql hacen referencia a ellos, pero no encuentro en este sitio las caracteristicas de cada uno.

Gracias...

Hasta Luego .-

roman
09-05-2007, 18:28:05
La verdad es que no recuerdo si alguna vez vi información específica de cada collate. El default de MySQL es latin1_swedish- vaya usted a saber porqué. Según dicen, que porque es el que más se adapta a los lenguajes europeos. Como quiera que no manejo- ni lo preveo en un futuro cercano -caracteres distintos de los del español, y como quiera que el utf no termina de acomodarme, opté por el latin1_spanish. Latin1 porque se correponde- hasta donde sé -al iso-8859-1, que es el que tradicionalmente he usado para caracteres del español. Spanish porque no megusta ver eso de swedish (nada contra los suecos, pero ¿qué tienen que ver con español?), y CI por case insensitive, ya que hace muy cómoda las búsquedas.

Como ves, no son argumentos muy científicos :D

// Saludos

lucasarts_18
09-05-2007, 20:19:08
Hombre!!, gracias por la info, seguiré en mi búsqueda de esta información, cualquier cosa aviso.

Gracias..