Mostrando entradas con la etiqueta script. Mostrar todas las entradas
Mostrando entradas con la etiqueta script. Mostrar todas las entradas

jueves, 30 de mayo de 2013

Crear una función en Informix para reemplazar acentos y caracteres especiales

Sencillo script para crear una función de usuario dentro de Informix, hay que tener en cuenta que a partir de la versión 10 de Informix ya no hay soporte para el comando CREATE FUNCTION, por eso este código funciona a partir de la versión 10+.

/* Editar este archivo con codificación UTF-8 */

/* DROP PROCEDURE mibasededatos:fun_quitar_acentos; */


CREATE PROCEDURE mibasededatos:fun_quitar_acentos (CADENA lvarchar)
RETURNING lvarchar;
  DEFINE TempString lvarchar;
  LET TempString = CADENA;
  
  LET TempString =  REPLACE(TempString, 'à', 'a');
  LET TempString =  REPLACE(TempString, 'è', 'e');
  LET TempString =  REPLACE(TempString, 'ì', 'i');
  LET TempString =  REPLACE(TempString, 'ò', 'o');
  LET TempString =  REPLACE(TempString, 'ù', 'u');
  LET TempString =  REPLACE(TempString, 'À', 'A');
  LET TempString =  REPLACE(TempString, 'È', 'E');
  LET TempString =  REPLACE(TempString, 'Ì', 'I');
  LET TempString =  REPLACE(TempString, 'Ò', 'O');
  LET TempString =  REPLACE(TempString, 'Ù', 'U');
  LET TempString =  REPLACE(TempString, 'ñ', 'n');
  LET TempString =  REPLACE(TempString, 'Ñ', 'n');
  LET TempString =  REPLACE(TempString, 'á', 'a');
  LET TempString =  REPLACE(TempString, 'é', 'e');
  LET TempString =  REPLACE(TempString, 'í', 'i');
  LET TempString =  REPLACE(TempString, 'ó', 'o');
  LET TempString =  REPLACE(TempString, 'ú', 'u');
  LET TempString =  REPLACE(TempString, 'Á', 'A');
  LET TempString =  REPLACE(TempString, 'É', 'E');
  LET TempString =  REPLACE(TempString, 'Í', 'I');
  LET TempString =  REPLACE(TempString, 'Ó', 'O');
  LET TempString =  REPLACE(TempString, 'Ú', 'U');
  LET TempString =  REPLACE(TempString, 'ç', 'c');
  LET TempString =  REPLACE(TempString, 'Ç', 'C');
 
  RETURN TempString;
END PROCEDURE;

/* comprobaciones */
execute procedure fun_quitar_acentos('Prueba: áéíóú Nñ ÁÉÍÓÚ');

SELECT descripcion, fun_quitar_acentos(descripcion) AS desc_sin_acentos FROM mi_tabla ORDER BY descripcion;

Este script va a crear una función de usuario dentro de Informix

Espero que les sea de utilidad

Datos personales

Mi foto
Podrás encontrar códigos recursos y artículos sobre PHP, JavaScript, jQuery, MooTools, Ajax, CSS, HTML, UML, RUP, AUP, XP (eXtreme Programming), Six-Sigma, CMMI, FrameWorks, Zend Framework, Magento, CodeIgniter, CakePHP, Joomla 1.5, Doctrine, Active Record, ORM, POO, MVC, MySql, PostgreSql. Este espacio está destinado a ayudar y compartir un poco de lo mucho que he recibido de la comunidad en la Red.