Re: [Pgsql-ayuda] Insertar datos desde C

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Alex Nu <notulei(at)yahoo(dot)com>
Cc: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] Insertar datos desde C
Date: 2003-08-01 03:07:32
Message-ID: 20030801030731.GC2970@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Thu, Jul 31, 2003 at 03:08:03PM -0700, Alex Nu wrote:
>
> Uy, no se que significa exactamente serializar,

Significa que conviertas el vector en una representación lineal.

Por ejemplo si tienes el vector (1, 2, 3) lo puedes convertir en lo
siguiente (todo lo que sigue son strings, no confundir con el vector):
1,2,3
(1,2,3) (o con cualquier marcador de principio-fin razonable)
1|2|3 (o cualquier separador razonable)
uno-dos-tres
I-II-III

etc. Obviamente hay algunas mejores que otras. La idea es que es un
string que puedes poner en un campo de tipo TEXT. Así, si tienes un
vector con 300.000 componentes vas a tener un string muy largo, pero que
es un solo dato. Además tu representación tiene que permitir convertir
a la forma nativa del vector fácilmente, y convertir del vector a la
representación.

Otra alternativa sería convertir los componentes del vector en los bytes
de la representación en punto flotante que tenga tu arquitectura y
guardar eso en un BYTEA. Me parece mala idea de frentón porque te
amarras a la arquitectura (i.e. no hay modo de pasar la BD de una
máquina little endian a un big endian).

Lo clave del asunto es que el vector no tiene que ser operado por
Postgres, sino sólo almacenado. Si no es así entonces no uses esto
porque te traerá muchos dolores de cabeza.

> Cual seria la forma mas eficiente, para insertar
> ese arreglo en una tabla ???

CREATE TABLE vectores (
vector_id SERIAL PRIMARY KEY,
vector TEXT
);

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Aprender sin pensar es inutil; pensar sin aprender, peligroso" (Confucio)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2003-08-01 03:15:38 Re: [Pgsql-ayuda] Llamar una funcion
Previous Message Atanacio Reyes 2003-08-01 01:49:32 Re: [Pgsql-ayuda] Insertar datos desde C