Re: Funciones con argumentos vacíos

From: jsgarcia(at)seguridad(dot)unam(dot)mx
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Funciones con argumentos vacíos
Date: 2009-06-03 17:22:06
Message-ID: 20090603122206.nga40nfwgwgs48o0@correo.seguridad.unam.mx
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


Tienes mucha razón¡¡¡ No lo había visto de ese modo¡¡ Aqui empezamos
a trabajar con el Zend Framework lo cual yo considero que tiene
bastante seguridad dada su estructura y sus clases. Pienso yo que no
es necesario crear funciones sino simplemente usar las bondades del
Framework y como dices validar los datos antes de que se inserten. No
se si tú hayas trabajado con éste y si en ese caso puedas reafirmar o
corregir mi idea.

Como sea, no me gustaría quedarme con el NO PUDE hacer la función y
mira... según la documentación:
LANGUAGE langname
| IMMUTABLE | STABLE | VOLATILE
| CALLED ON NULL INPUT

he construido la función así:

CREATE FUNCTION add_fila(numeric,varchar,varchar,
varchar,interval,numeric, numeric,numeric,numeric,char) RETURNS
integer AS 'BEGIN INSERT INTO video
values($1,$2,$3,$4,$5,$6,$7,$8,$9,$10); return 1; END' LANGUAGE
'plpgsql' CALLED ON NULL INPUT;
CREATE FUNCTION

pero al darle los argumentos...

select add_fila(20,'Pumas Campeon','NULL','NULL','NULL','NULL',1,1,1,'NULL');

:S

______________________________________________________________________
Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> ha escrito:

> jsgarcia(at)seguridad(dot)unam(dot)mx escribió:
>> Gracias Álvaro por la respuesta, en un momento más probaré. Quisiera
>> pedirte como un gran favor que me platicaras por qué no debería usar una
>> función para un insert. Esto me lo han pedido aqui,
>
> Porque no tiene ningún propósito ... ?
>
>> argumentando una mayor seguridad con el fnde evitar por ejemplo SQL
>> Injection.
>
> Absurdo. Se puede hacer una inyección de SQL en un llamado a función
> también. Necesitas protegerte de estos casos _antes_ de pasarle
> cualquier cosa a la BD, independiente de si es un INSERT o un llamado a
> función.
>
>> Podrías aconsejarme algo???
>
> "No creas todo lo que te digan" ¿sirve?
>
> --
> Alvaro Herrera http://www.advogato.org/person/alvherre
> "Use it up, wear it out, make it do, or do without"
> --
> TIP 7: no olvides aumentar la configuración del "free space map"
>

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

Attachment Content-Type Size
Clave PGP =?iso-8859-1?b?cPpibGljYQ==?= application/pgp-keys 1.7 KB

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2009-06-03 17:25:49 Re: Funciones con argumentos vacíos
Previous Message Giorgio PostgreSQL 2009-06-03 17:10:35 Herramienta para migrar de SQL Server a PostgreSQL