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.-