Re: Consulta Capos tipo Bytea

From: Marcos Ortiz <mlortiz(at)uci(dot)cu>
To: Fernando Siguenza <fsigu(at)hotmail(dot)com>
Cc: Foro Postgres <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Consulta Capos tipo Bytea
Date: 2012-02-09 17:45:36
Message-ID: 4F340640.8090500@uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

¿Cómo fue que hiciste la migración hacia 9.1.2?
Mi recomendación es que uses pg_upgrade para hacerlo y así tendrás
mejores resultados.

El 2/9/2012 12:01 PM, Fernando Siguenza escribió:
> Gracias Amigos por sus respuestas, pero sigo teniendo el mismo error,
>
> Ya probe actualizando el npgsql a la version *Npgsql2.0.11.92
> <http://pgfoundry.org/frs/shownotes.php?release_id=1889>*
>
> Pero no funciono el error sigue.
>
> Intente lo del bytea_output pero no me funciono no se si aqui a lo mejor
> tengo algo estoy haciendo mal el codigo que uso para esto es el siguiente
>
>
> public DataSet recuperaArticulos(string agecod, string codArticulo,
> string desArticulo, string codGrupo, string codLinea, string
> codProveedor, Boolean artInactivo, Boolean servicio)
> {
> using (cnpg = new
> NpgsqlConnection(ConfigurationManager.ConnectionStrings["postgres"].ToString()))
> {
> NpgsqlCommand comando;
>
> DataSet ds = null;
> cnpg.Open();
> NpgsqlTransaction t = cnpg.BeginTransaction();
> comando = new NpgsqlCommand("set bytea_output = 'escape'", cnpg);
> comando.ExecuteNonQuery();

El contexto de esa variable de configuración es en la sesión, así que
debería funcionar.

Prueba antes de abrir cualquier transacción, ejecutar el comando SET
bytea_ouput = 'escape', o sino, házlo ya en el postgresql.conf de una vez.

>
> comando = new NpgsqlCommand("select
> artagecod,artcod,artdes,artexi,artcos,artlin,lindes, artgru,
> grudes,artpro, proape || ' ' || pronom as proveedor, artfecult,
> artcosult,artdescue,
> preval,artnotinv,artconpro,articulo.inactivo,artiva, arteximin, (artexi
> - artconpro) as exicon,artcar, artlogo,artser from articulo inner join
> lineas on linagecod=artagecod and lincod=artlin inner join grupos on
> gruagecod=artagecod and grucod=artgru inner join proveedores on
> proagecod=artagecod and procod=artpro inner join preart on
> preagecod=artagecod and preart=artcod where (artagecod=(at)AgeCod and
> artcod Like @CodArticulo and artdes Like @Descripcion and artgru Like
> @CodGrupo and artlin Like @CodLinea and artpro Like @CodProveedor and
> articulo(dot)inactivo=(at)artInactivo) order by artdes ", cnpg);
> }
>
> comando.CommandType = CommandType.Text;
> comando.Parameters.Add(new NpgsqlParameter("@AgeCod",
> NpgsqlDbType.Varchar, 3)).Value = agecod;
> comando.Parameters.Add(new NpgsqlParameter("@CodArticulo",
> NpgsqlDbType.Varchar, 15)).Value = codArticulo + '%';
> comando.Parameters.Add(new NpgsqlParameter("@Descripcion",
> NpgsqlDbType.Varchar, 30)).Value = desArticulo + '%';
> comando.Parameters.Add(new NpgsqlParameter("@CodGrupo",
> NpgsqlDbType.Varchar, 5)).Value = codGrupo + '%';
> comando.Parameters.Add(new NpgsqlParameter("@CodLinea",
> NpgsqlDbType.Varchar, 5)).Value = codLinea + '%';
> comando.Parameters.Add(new NpgsqlParameter("@CodProveedor",
> NpgsqlDbType.Varchar, 11)).Value = codProveedor + '%';
> comando.Parameters.Add(new NpgsqlParameter("@artInactivo",
> NpgsqlDbType.Integer)).Value = 1;
> NpgsqlDataAdapter da = new NpgsqlDataAdapter(comando);
> ds = new DataSet();
> da.Fill(ds);
> t.Commit();
>
> return ds;
> }
> }
>
> Cualquier ayuda es bienvenida.
>
> SAludos
>
>
> > Date: Thu, 9 Feb 2012 09:25:30 -0500
> > From: mlortiz(at)uci(dot)cu
> > To: fsigu(at)hotmail(dot)com
> > CC: pgsql-es-ayuda(at)postgresql(dot)org
> > Subject: Re: [pgsql-es-ayuda] Consulta Capos tipo Bytea
> >
> >
> >
> > El 2/9/2012 9:02 AM, Fernando Siguenza escribió:
> > > Amigos como estan, queria consultarles algo, alguien sabe si hay algun
> > > cambio en los tipos de datos bytea??
> > >
> > > Ya que tengo un programa en punto net en el cual grabo imagenes en
> > > postgre en este tipo de datos, el programa funciona bien en postgre
> 8.4,
> > > pero ayer actualice a la version 9.1.2 de postgre y ya no me
> funciona el
> > > programa, tengo un error en punto net, me sale un mensaje de error al
> > > tratar de convertir a imagen lo que tengo en ese campo.
> > >
> > > Y lo unico que he hecho es actualizar a la base de datos.
> >
> > Es aconsejable siempre que cambias de versión hacerlo con un
> > pg_dump/pg_reload, o usando Slony o usando
> > pg_upgrade, una excelente utilidad desarrollada por Bruce Momjian para
> > actualizar de versión más rápido.
> >
> > La documentación en la notas de versión recomiendan hacer algunos de
> > estos pasos que he descrito antes por el hecho de que desde 8.4 a 9.0,
> > han ocurrido muchos cambios tanto en el catalógo, como en el núcleo del
> > sistema para garantizar una mejor calidad del código y muchas veces
> > rompe la compatibilidad hacia atrás de algunas funcionalidades.
> >
> > Sobre el tipo de datos bytea, a partir de la versión 9.0, la salidad del
> > tipo de datos aparece en formato hexagesimal por defecto (gracias a
> > Peter Eisentraut), por lo que si la migración viene de 8.4, existe un
> > parámetro ahora bytea_output que puede ser usado para seleccionar el
> > formato tradicional de salida si se hace necesario para la
> > compatibilidad, ya sea el formato de escape o el de hexagesimal.
> >
> > Tipos de datos binarios
> > http://http://www.postgresql.org/docs/9.1/static/datatype-binary.html
> >
> > Notas de versión de la 9.0
> > http://http://www.postgresql.org/docs/9.0/static/release-9-0.html
> > Fíjate en la sección E.2.2.3 Data Types
> >
> > Saludos
> > --
> > Marcos Luis Ortíz Valmaseda
> > Sr. Software Engineer (UCI)
> > http://marcosluis2186.posterous.com
> > http://www.linkedin.com/in/marcosluis2186
> > Twitter: @marcosluis2186
> >
> >
> >
> > Fin a la injusticia, LIBERTAD AHORA A NUESTROS CINCO COMPATRIOTAS QUE
> SE ENCUENTRAN INJUSTAMENTE EN PRISIONES DE LOS EEUU!
> > http://www.antiterroristas.cu
> > http://justiciaparaloscinco.wordpress.com
>
>
> <http://www.antiterroristas.cu/>

--
Marcos Luis Ortíz Valmaseda
Senior Software Engineer (UCI)
http://marcosluis2186.posterous.com
http://www.linkedin.com/in/marcosluis2186
Twitter: @marcosluis2186

Fin a la injusticia, LIBERTAD AHORA A NUESTROS CINCO COMPATRIOTAS QUE SE ENCUENTRAN INJUSTAMENTE EN PRISIONES DE LOS EEUU!
http://www.antiterroristas.cu
http://justiciaparaloscinco.wordpress.com

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2012-02-09 19:15:29 RE: Agotamiento del Espacio en Disco al Ejecutar Conulta
Previous Message Jaime Casanova 2012-02-09 17:39:10 Re: Ayuda sobre problema de replicacion