Re: crear expresion

From: Arturo Rossodivita <arossodivita(at)gmail(dot)com>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: crear expresion
Date: 2009-04-20 20:11:58
Message-ID: 36fdef070904201311y7df31867l94da5f8b0182321@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Tratando de solucionar el inconveniente que les comente me di cuenta de lo
siguiente:

como les dije, no habia modificado en el readfuncs.ce a parseNodeString();

lo que hice fue lo siguiente: en la linea 1062 de readfuncs.c en
parsenoseString();inclui un nuevo condicional para que sepa que hacer con
los nodos A_Expr

else if (MATCH("AEXPR", 5))

return_value = _readAexpr();

y cree _readAexpr(); de la siguiente forma:

static A_Expr *

_readAexpr(void)

{

READ_LOCALS(A_Expr);

READ_ENUM_FIELD(kind,A_Expr_Kind);

READ_NODE_FIELD(name);

READ_NODE_FIELD(lexpr);

READ_NODE_FIELD(rexpr);

READ_INT_FIELD(location);

READ_DONE();

}

Ok, hasta aqui "todo bien", cuando ejecuto una consulta con predicado difuso
de la manera Select * From X Where edad = aprox;

me sigue dando el error de unexpected right parenthesis, y me di cuenta que
el error da al llamar READ_NODE_FIELD(); con cualquiera de las tres
llamadas; para name, lexpr y rexpr;

sigo sin saber que pueda ser esto no se si tiene que ver a que ese es un
nodo A_Expr guardado directamente desde el gram.y, me refiero sin hacer un
transformWhereClause(); ni nada, yo solo lo obtengo a la hora de crear un
fuzzy predicate y lo guardo directamente al catalogo transformandolo a text.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Virginia 2009-04-20 20:19:54 Re: restaurar bases de datos
Previous Message Jose Luis Balle 2009-04-20 20:00:08 Re: restaurar bases de datos