Re: longitud tipo dato serial

From: Victor Avendaño <avenda(at)gmail(dot)com>
To: "Hector R(dot) De los Santos" <zahory(at)gmail(dot)com>
Cc: Gustavo Rosso <grosso(at)sadaic(dot)org(dot)ar>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: longitud tipo dato serial
Date: 2010-03-22 18:06:50
Message-ID: a17864cc1003221106r2f78b4e3i9557f1dd3a5d8552@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Entonces seria algo así?

lpad(serial, 4, 00)

El 22 de marzo de 2010 11:09, Hector R. De los Santos
<zahory(at)gmail(dot)com>escribió:

> Seguimos hablando de lo mismo??
> No entendi que quisiste decir con esta opinion, no he recomendado un
> leguaje diferente al sql, agregar esa funcion a un insert no tiene
> nada de complejo. Aunque la verdad no recomiendo esto, lo mas sano
> seria dejar tus datos numericos y hacer el lpad cuando vayas a mostrar
> la informacion.
>
> El 22/03/10, Gustavo Rosso <grosso(at)sadaic(dot)org(dot)ar> escribió:
> > Buen dia.
> > Depende como esta escrito el insert, me parece que no todos los
> > lenguajes compilan lpad(), por eso me parece que, salvo excepciones, las
> > funciones de Postgres las dejaria que la realize el.
> > Es una opinion.
> > Saludos
> >
> > Hector R. De los Santos escribió:
> >> Un trigger?
> >> Me parece que es algo demaciado simple para tener que integrarlo en un
> >> trigger, si deseas tener ese campo tipo Varchar y rellenarlo con
> >> ceros, solo basta hacer el lpad() en el INSERT.
> >>
> >> Suerte!
> >>
> >> :: HDS Consultores TI
> >> Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
> >> Web: http://hdsconsultores.net
> >> Blog: http://codigohds.com
> >> Linux User #:320363
> >>
> >>
> >> 2010/3/22 Gustavo Rosso <grosso(at)sadaic(dot)org(dot)ar
> >> <mailto:grosso(at)sadaic(dot)org(dot)ar>>
> >>
> >>
> >>
> >> Victor Avendaño escribió:
> >>
> >> Parece que me expresé mal, no necesariamente necesito un tipo
> >> de datos, pero sería genial que así se pudiera generar, lo que
> >> deseo es poder tener algo como un character varing de longitud
> >> 3 que sea autoincrementable, osea que se baya generando de la
> >> siguiente manera 001, 002, 003..... 012,013,014, ... etc
> >> debido a que necesito grabar esos 3 caracteres y como serial
> >> no me conserva los ceros, quizas otra solucion seria poder
> >> guardar el serial pero con los ceros delante cosa que yo al
> >> traerlos o exportarlos siempre pueda manipular esos 3
> >> caracteres... me explico???
> >>
> >> 2010/3/22 Ing. Marcos Ortiz Valmaseda <mlortiz(at)uci(dot)cu
> >> <mailto:mlortiz(at)uci(dot)cu> <mailto:mlortiz(at)uci(dot)cu
> >> <mailto:mlortiz(at)uci(dot)cu>>>
> >>
> >>
> >> Victor Avendaño escribió:
> >>
> >> Buenas Lista, mi duda es:
> >>
> >> Hay alguna forma de crear tipo de datos serial 3 digitos
> o
> >> mas. Me explico un campo 'codx' de tipo serial y que
> >> autoincremente algo así 001, 002, 003. Según tengo
> >> entendido
> >> postgres incrementa 1, 2, 3, 4, 5, 6. Se puede dar la
> >> logitud
> >> o la catidad de digitos.
> >>
> >> Espero se haya entendido.
> >>
> >> Gracias
> >>
> >> SERIAL es un tipo de datos con un comportamiento definido;
> >> por lo
> >> que tendrías que hacer un nuevo tipo de datos, no usar éste.
> >> Pudieras implementar uno que se comportara como quieres,
> >> con una
> >> función aparte que asigne esos valores que quieres.
> >> Te dejo un ejemplo de cómo crear un tipo de datos en
> >> PostgreSQL:
> >> Tomado de la documentación:
> >>
> >> CREATE TYPE inventory_item AS (
> >> name text,
> >> supplier_id integer,
> >> price numeric
> >> );
> >>
> >> Cómo usarlo:
> >>
> >> CREATE TABLE on_hand (
> >> item inventory_item,
> >> count integer
> >> );
> >>
> >> INSERT INTO on_hand VALUES (ROW('fuzzy dice', 42, 1.99),
> 1000);
> >>
> >> Saludos
> >>
> >> Un trigger que llame a una funcion antes del insert?
> >> Saludos!
> >> Gustavo
> >>
> >>
> >> --
> >> -------------------------------------------------------- -- Ing.
> >> Marcos Luís Ortíz Valmaseda --
> >> -- Twitter: http://twitter.com/@marcosluis2186 --
> >> -- FreeBSD Fan/User --
> >> -- http://www.freebsd.org/es --
> >> -- Linux User # 418229 --
> >> -- Database Architect/Administrator --
> >> -- PostgreSQL RDBMS --
> >> -- http://www.postgresql.org --
> >> -- http://planetpostgresql.org --
> >> -- http://www.postgresql-es.org --
> >> --------------------------------------------------------
> >> -- Data WareHouse -- Business Intelligence Apprentice --
> >> -- http://www.tdwi.org --
> >> -------------------------------------------------------- --
> >> Ruby
> >> on Rails Fan/Developer --
> >> -- http://rubyonrails.org --
> >> --------------------------------------------------------
> >>
> >> Comunidad Técnica Cubana de PostgreSQL
> >> http://postgresql.uci.cu
> >> http://personas.grm.uci.cu/+marcos Centro de
> >> Tecnologías de Gestión de Datos (DATEC) Contacto:
> >>
> >> Correo: centalad(at)uci(dot)cu <mailto:centalad(at)uci(dot)cu>
> >> <mailto:centalad(at)uci(dot)cu <mailto:centalad(at)uci(dot)cu>>
> >> Telf: +53 07-837-3737
> >> +53
> >> 07-837-3714
> >> Universidad de las Ciencias
> >>
> >> Informáticas http://www.uci.cu
> >>
> >>
> >>
> >>
> >> --
> >> Víctor Avendaño Fuentes.
> >> Soporte Informático.
> >> Fono: 65-484811
> >> Móvil: 09-85263743
> >> E-mail: vavenda(at)clinicapuertomontt(dot)cl
> >> <mailto:vavenda(at)clinicapuertomontt(dot)cl>
> >> <mailto:vavenda(at)clinicapuertomontt(dot)cl
> >> <mailto:vavenda(at)clinicapuertomontt(dot)cl>>.
> >> www.clinicapuertomontt.cl <http://www.clinicapuertomontt.cl>
> >> <http://www.clinicapuertomontt.cl>
> >>
> >> --
> >> TIP 4: No hagas 'kill -9' a postmaster
> >>
> >>
> >
>
> --
> Enviado desde mi dispositivo móvil
>
> :: HDS Consultores TI
> Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
> Web: http://hdsconsultores.net
> Blog: http://codigohds.com
> Linux User #:320363
> --
> TIP 2: puedes desuscribirte de todas las listas simultáneamente
> (envía "unregister TuDirecciónDeCorreo" a majordomo(at)postgresql(dot)org)
>

--
Víctor Avendaño Fuentes.
Soporte Informático.
Fono: 65-484811
Móvil: 09-85263743
E-mail: vavenda(at)clinicapuertomontt(dot)cl(dot)
www.clinicapuertomontt.cl

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Hector R. De los Santos 2010-03-22 18:14:06 Re: longitud tipo dato serial
Previous Message ulises gonzalez 2010-03-22 17:48:24 Re: Lenguajes habilitados