[XQZone General] Problem in Setting Xquery Variable Values

Ron Hitchens ron.hitchens at marklogic.com
Fri Dec 9 15:13:20 PST 2005


Sandesh,

    Yeah, it's hard to tell for sure what the problem is
without seeing the exact code.

    You can get tripped up by namespaces as Jason suggests.
You also need to make sure you declare external variables
in your XQuery script, like this:

      define variable $foo as xs:string external

    If the XQuery code that you're fetching at runtime
does not have declarations for the variables you're setting
on the XDBCStatement object, then the server will not be
able to setup the bindings when the XQuery request is
evaluated.

On Dec 9, 2005, at 9:16 AM, Jason Hunter wrote:

> Hi Sandesh,
>
> It would help if you included the query and names.  My blind guess  
> is that your variable is in a namespace, and you're not taking that  
> into account when assigning it by name.  Namespaces are an  
> intrinsic part of names.
>
> -jh-
>
> Sandesh Pai wrote:
>
>> Hi,
>>    I am using XDBC api's in our application.
>>    I have a xquery file which I read at runtime and get the  
>> content as string.
>>    and I do the follwing part
>>   xdbcStatement = connection.createStatement();
>>   XDBCXName varName = new XDBCXName(name1);
>>   xdbcStatement.setString(varName,variableValue1);
>>                       varName = new XDBCXName(name2);
>>   xdbcStatement.setInteger(varName,variableValue2);
>>  XDBCResultSequence xdbcResult = xdbcStatement.executeQuery(query);
>> But I get the exception saying
>> Undefined variable name1
>> I dont know what is the problem..please help me on this
>> Regards
>> meetpai at gmail.com
>> _______________________________________________
>> General mailing list
>> General at xqzone.marklogic.com
>> http://xqzone.com/mailman/listinfo/general
> _______________________________________________
> General mailing list
> General at xqzone.marklogic.com
> http://xqzone.com/mailman/listinfo/general

---
Ron Hitchens {ron.hitchens at marklogic.com}  650-655-2351





More information about the General mailing list