Re: PROBLEMA DE INSERT EN ESQUEMA

From: Gabriel Hermes Colina Zambra <hermeszambra(at)yahoo(dot)com>
To: Gabriel Ferro <gabrielrferro(at)yahoo(dot)com(dot)ar>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: PROBLEMA DE INSERT EN ESQUEMA
Date: 2008-03-20 06:14:45
Message-ID: 675103.55539.qm@web63706.mail.re1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


--- Gabriel Ferro <gabrielrferro(at)yahoo(dot)com(dot)ar>
escribió:

> Maestros, tengo un problemilla y me estoy perdiendo,
> la cosa es que cree una tabla "personas" en un
> esquema llamado "analisis" y quiero insertar desde
> VB con el comando
> cnn.execute "INSERT INTO analisis.personas
> (documento, tipodoc, nombre, direccion, sexo, otros)
> VALUES ('99999999', 1, 'pirulo', 'B
> MACARONE','M','otro dato');"
>
> la cosa es que VB6 me da el error
> " no hay columnas definidas en el conjunto de filas"
>
> pero cuando ejecuto lo que esta entre comillas desde
> el pgadmin, me lo hace sin problemas.
> a alguien se le ocurre que puede ser?
>
>
>
>
> Yahoo! Encuentros.
>
> Ahora encontrar pareja es mucho más fácil, probá el
> nuevo Yahoo! Encuentros
http://yahoo.cupidovirtual.com/servlet/NewRegistration

No es problema ni de esquema ni de postgresql.

Te comento como resuelvo yo eso con una conexion del
dataenviroment.

Metodo uno

DtaSysGc.cnSysGeGc.Execute "insert into
central.documentos (id_articulo,id_cab,cantidad)
select '" & TxtDatos(0).Text & "' as id_articulo, " &
nCabezales & " as id_cab, " &
Abs(Val(Lbldatos(4).Caption)) & " as cantidad;"

Metodo dos, en un dataenviroment inserto un
procedimiento almacenado,
invocandolo asi y pasandole los parametros que te
solicita y reconoce sin problemas,
central.fnc_ing_doc_acree_asoc es en este caso una
funcion, pl/pgsql. la cual inserte en dtasysgegcfunc,
que es un arhico dsr en el datenviroment, que ve muy
bien estos store procedure, funciones en postgresql.

DtaSysGeGcFunc.central_fnc_ing_doc_acree_asoc

DbgSinAsignar.Columns(0), DbgSinAsignar.Columns(1),
DbgSinAsignar.Columns(2), DbgSinAsignar.Columns(3),
Int(Val(DataGridProveedor.Columns(1))),
DbgSinAsignar.Columns(4),
Val(DataComboMoneda.BoundText),
DtaSysGc.rssqlmonedas.Fields("cotizacion_dia"),
IIf(Int(DbgSinAsignar.Columns(7)) =
Int(DbgPendientes.Columns(7)),
DbgPendientes.Columns(7),
Val(DbgSinAsignar.Columns(7))),
DbgPendientes.Columns(0), DbgPendientes.Columns(1),
DbgPendientes.Columns(2), DbgPendientes.Columns(3)

Mejora todavia si tenes un valor de retorno, por
ejemplo para mostrarte el id serial que inserto
devolviendo return currval('secuencia'), para lo cual
tenes que invocarla con una variable integer por
ejemplo

intVariable =
DtaSysGeGcFunc.central_fnc_ing_doc_acree_asoc(

DbgSinAsignar.Columns(0), DbgSinAsignar.Columns(1),
DbgSinAsignar.Columns(2), DbgSinAsignar.Columns(3),
Int(Val(DataGridProveedor.Columns(1))),
DbgSinAsignar.Columns(4),
Val(DataComboMoneda.BoundText),
DtaSysGc.rssqlmonedas.Fields("cotizacion_dia"),
IIf(Int(DbgSinAsignar.Columns(7)) =
Int(DbgPendientes.Columns(7)),
DbgPendientes.Columns(7),
Val(DbgSinAsignar.Columns(7))),
DbgPendientes.Columns(0), DbgPendientes.Columns(1),
DbgPendientes.Columns(2), DbgPendientes.Columns(3))

esta ves con los parametros entre parentesis.

Bien Gabriel, espero te sirva, si no mandame el codigo
y el formulario y te doy una manito.

Atte.
Gabriel Colina

____________________________________________________________________________________
¡Capacidad ilimitada de almacenamiento en tu correo!
No te preocupes más por el espacio de tu cuenta con Correo Yahoo!:
http://correo.espanol.yahoo.com/

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Oswaldo Hernández 2008-03-20 12:03:58 Re: Se puede hacer ?
Previous Message Gabriel Hermes Colina Zambra 2008-03-20 05:53:54 Re: Rehaciendo Postgresql.cl