Re: 3 consultas sobre Funciones

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Carlos Chávez Z(dot) <cchavez(at)oxyman(dot)com(dot)pe>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: 3 consultas sobre Funciones
Date: 2007-05-09 16:58:35
Message-ID: 20070509165835.GP4504@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

"Carlos Chávez Z." escribió:
> Hola a todos, para empezar debo aclarar que soy novato en Postgres por
> lo cual disculpen si pregunto cosas triviales pero la verdad le estoy
> dando vueltas al asunto y no le doy a la respuesta.

> INSERT INTO "RRHH"."TipoTrabajador" VALUES (codigo,descri);
> IF NOT FOUND THEN
> RAISE EXCEPTION 'no pasa nada...';
> RETURN FALSE;
> ELSE
> RETURN TRUE;
> END IF;

> 1. Hay alguna función que reemplace al isnull de sqlserver?

Deshazte de ese codigo, no lo necesitas. Mejor usa un campo SERIAL.
Este se incrementa automaticamente.

> 2. el manejo de la transacción está bien definida en mi función de
> postgres?

No realmente ... al hacer el RAISE EXCEPTION la funcion es abortada, por
lo que el RETURN FALSE nunca se ejecutara.

> 3. hay forma de evitar poner las comillas dobles en los nombres de las
> tablas, esquemas, etc. (en los ejemplos que he visto no las usan pero
> cuando edito mis funciones no me acepta si no es como comillas)

Las comillas son para evitar que las mayusculas en el identificador se
conviertan a minusculas. Podrias quitarlas, pero para eso tendrias que
asegurarte que las tablas y columnas tienen nombres solo con minusculas.

(Es buena idea de todas formas porque la tontera de las comillas te va a
molestar toda la vida).

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2007-05-09 16:59:24 Re: Script Vacuum
Previous Message Antonio Galicia 2007-05-09 16:55:57 Re: 3 consultas sobre Funciones