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 <[email protected]> > > > 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 <[email protected] <mailto: >> [email protected]>> >> >> >> 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: [email protected] <mailto: >> [email protected]> 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: [email protected] <mailto: >> [email protected]>. >> www.clinicapuertomontt.cl <http://www.clinicapuertomontt.cl> >> > -- > TIP 4: No hagas 'kill -9' a postmaster >
