El 20/03/2014 11:16, Henry escribió:
>
> Buenas,
> Lo que estoy haciendo es mandar dichos valores como parametros en la
> funcion.
> Pero cada vez que alguno de esos valores contiene un apostrofe le
> agrega el simbolo \
>
> Con postgresql 8.3 trabaja de manera apropiada, pero realizando las
> pruebas pre migracion salta dicho mensaje con postgresql 9.3
>
> Enviado desde Yahoo Mail en Android
> <https://mx.overview.mail.yahoo.com/mobile/?.src=Android>
>
>
> ------------------------------------------------------------------------
> *From: * Juan <smalltalker.marc...@gmail.com>;
> *To: * Henry <hens...@yahoo.es>;
> *Cc: * pgsql-es-ayuda <pgsql-es-ayuda@postgresql.org>;
> *Subject: * Re: [pgsql-es-ayuda] plsqpdbc / ADODB.Command agrega al
> apostrofe simbolo \
> *Sent: * Thu, Mar 20, 2014 5:55:14 AM
>
> Hola
>
>
> Me parece . no estoy seguro pero los parametros no van el el select
> .... sino en el where order u otro statement me parece 
> que en lista de campos tiene poco sentido porque podes hacer select *
>  from bla y luego solo tomar los campos que te parezcan
> el ? tiene mas sentido cuando algo se parametriza como en el where
> .... ( es filtro)---
>
> salu2
>
> jmdc 
>
>
> 2014-03-20 2:22 GMT-03:00 Henry <hens...@yahoo.es <javascript:return>>:
>
>     Buenas tardes.
>
>     vamos a migrar de postgresql 8.3 a 9.3, para esto estamos
>     realizando pruebas tanto con la nueva version del motor de base de
>     datos como con la aplicacion.
>
>     Aplicacion VB 6
>
>     Pero se me esta presentnado un problema.
>     Adjunto linea de codigo de la aplicacion.
>
>
>     
> ================================================================================================
>     Dim cmd As New ADODB.Command
>     Dim Rs As New ADODB.Recordset
>
>     With cmd
>            .ActiveConnection = Str_cnx 'conexion_usuario
>            .CommandType = adCmdText
>            .CommandText = "begin;" & _
>             "select fac_rpt(?,?,?,?,'gdatos',?,?);" & _
>                                     "fetch all in  gdatos;"
>            .Parameters.Append .CreateParameter("NombreReporte",
>     adVarChar, adParamInput, -1, NombreReporte)
>            .Parameters.Append .CreateParameter("Where", adVarChar,
>     adParamInput, -1, where)
>            .Parameters.Append .CreateParameter("OrderBy", adVarChar,
>     adParamInput, -1, OrderBy)
>            .Parameters.Append .CreateParameter("CantFilas", adInteger,
>     adParamInput, -1, CantFilas)
>            .Parameters.Append .CreateParameter("CodTipoDoc",
>     adVarChar, adParamInput, -1, CodTipoDoc)
>            .Parameters.Append .CreateParameter("NumTipoDoc",
>     adVarChar, adParamInput, -1, NumTipoDoc)
>            
>          With Rs
>             .CursorLocation = adUseClient
>             .Open cmd, , adOpenStatic, adLockReadOnly --Aqui salta el
>     error
>          End With
>          .CommandText = "commit;"
>          .Execute
>     End With
>     
> ================================================================================================
>     El valor de la variable where es
>      a.doc_femi>='03/20/2014' AND a.doc_femi<='03/20/2014' and
>     a.Doc_Provisional=0 and a.doc_interno=0
>
>     --El error que me muestra es:
>     Error while executing the query;
>     ERROR:  error de sintaxis en o cerca de «03»
>     LINE 1: ...rpt('Correspondencia_Cliente_new','
>     a.doc_femi>=\'03/20/2014...
>
>     El error se ve que a la variable "where" antes del apostrofe le ha
>     adjuntado el simbolo \.
>
>     Lo cual no se presentaba con postgresql 8.3
>
>     Alquien con una experiencia similar para que me pueda ayudar.
>
>     Gracias.
>
>
>      
>     Henry
>
>
Hola fijate los siguientes parametros:

standard_conforming strings = off
backslash_quote = on

a mi tambien me dieron unos dolores de cabezas terriblessssssss
espero te sirvan!

saludos.-

Responder a