Ver Mensaje Individual
  #12 (permalink)  
Antiguo 03/02/2015, 07:26
lulier19
 
Fecha de Ingreso: enero-2015
Mensajes: 13
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Crear consultas para base de datos Mysql

Hola, disculpe las molestias
Tengo una duda, verá he construido dos funciones en SQL :

Código MySQL:
Ver original
  1. drop function if exists esMatricula;
  2.  
  3. delimiter //
  4. create function esMatricula(cad char(7)) returns int
  5.     declare k int default length(cad);
  6.     declare i int default 1;
  7.     declare j int default 5;
  8.     while(i<=4) do
  9.         if (ascii(substring(cad,i,1))>=48 and ascii(substring(cad,i,1))<=57) then
  10.             set i=i+1;
  11.         else
  12.             return 0;
  13.         end if;
  14.     end while;
  15.     while(j<=7) do
  16.         if ((ascii(substring(cad,j,1))>=65 and ascii(substring(cad,j,1))<=90 then
  17.             set j=j+1;
  18.         else
  19.             return 0;
  20.         end if;
  21.     end while;
  22.     return 1;
  23. //
  24. delimiter ;
[/CODE]

Y:

Código MySQL:
Ver original
  1.  
  2. delimiter //
  3. create function esFecha(cad varchar(10)) returns int
  4.     declare aux int default 0;
  5.     if (isDATE(cad))=1 then
  6.         aux=1;
  7.     end if;
  8.     return aux;
  9. //
  10. delimiter ;
[/CODE]

La primera sirve para comprobar siuna cadena de caracteres de longitud 8 está compuesta por 4 digitos (las 4 primeras posiciones) y 3 digitos(las 3 ultimas posiciones)

Y "esFecha" sirve para comprobar si una cadena de caractres de 10 elementos, corresponde a una fecha : YYYY/MM/DD

Ambas me dan error, pero no logro saber porqué.
Agradeceria algun tipo de ayuda

Última edición por gnzsoloyo; 03/02/2015 a las 08:54