Lo ocupo para lo y bytea, dependiendo de lo que quiere, De hecho lo ocupo para 
insertar imágenes y documentos, el tipo de campo que utilizo es bytea:

CREATE TABLE "compras"." documentosp" (
  "id_estado" VARCHAR(2) DEFAULT 'SA'::character varying NOT NULL, 
  "co_empresa" INTEGER DEFAULT 1 NOT NULL, 
  "co_filial" INTEGER DEFAULT 1 NOT NULL, 
  "co_tipo" INTEGER DEFAULT 0 NOT NULL, 
  "sq_proveedor" INTEGER DEFAULT 0 NOT NULL, 
  "nb_documento" VARCHAR(60) DEFAULT ''::character varying NOT NULL, 
  "nb_archivo" VARCHAR(100) DEFAULT ''::character varying NOT NULL, 
  "archivo_mime" TEXT NOT NULL, 
  "archivo_size" DOUBLE PRECISION NOT NULL, 
  "archivo_bytea" BYTEA NOT NULL, 
  "fe_creacion" DATE NOT NULL, 
  "id_usuario" VARCHAR(30) DEFAULT 'eMARKETING'::character varying NOT NULL, 
  "sq_serialcolumn" BIGSERIAL, 
  CONSTRAINT "eMarketing_documentosco_pk" PRIMARY KEY("co_empresa", 
"co_filial", "co_tipo", "sq_proveedor", "sq_serialcolumn"), 
  CONSTRAINT "eMarketing_documentosco_sq_serialcolumn_key" 
UNIQUE("sq_serialcolumn")
) WITH OIDS;


Acá evalúo si es tipo lo o bytea donde quiero insertar.

////**
                if(!$isoid){
                        # Escapa el contenido del archivo para ingresarlo como 
bytea
                        $buffer=pg_escape_bytea($buffer);
                        $sql = "INSERT INTO foo(nombre, descripcion, 
archivo_bytea, mime, size)
                                                        VALUES ('$nombre', 
'$desc', '$buffer', '$type', $size)";
                }
                else{
                        # Inicia una transacción
                        pg_query($link, "begin");
                        # Crea un objeto blob y retorna el oid
                        $oid=pg_lo_create($link);
                        $sql = "INSERT INTO foo(nombre, descripcion, 
archivo_oid, mime, size)
                        VALUES ('$nombre', '$desc', $oid, '$type', $size)";
                }

***/////


Saludos


-----Mensaje original-----
De: Alvaro Herrera [mailto:alvhe...@alvh.no-ip.org] 
Enviado el: martes, 05 de junio de 2012 13:43
Para: Mario Soto Cordones
CC: 'Juan'; Ayuda
Asunto: RE: [pgsql-es-ayuda] guardar campos bytea


Excerpts from Mario Soto Cordones's message of mar jun 05 13:21:42 -0400 2012:
>  
> 
>  
> 
> Mira como lo hago yo, espero te sirva

Pero esto es large object, no bytea.


-- 
Álvaro Herrera <alvhe...@alvh.no-ip.org>

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a