Matthias Brantner has proposed merging 
lp:~zorba-coders/zorba/jdbc_connect-scripting-bug into lp:zorba/jdbc-module.

Commit message:
  fix "[SQL08003] There is no connection to any valid source" bug that occurrs 
when
  not binding a connection to a scripting variable.

Requested reviews:
  Matthias Brantner (matthias-brantner)

For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/jdbc_connect-scripting-bug/+merge/205686
-- 
https://code.launchpad.net/~zorba-coders/zorba/jdbc_connect-scripting-bug/+merge/205686
Your team Zorba Coders is subscribed to branch lp:zorba/jdbc-module.
=== modified file 'include/jdbc.h'
--- include/jdbc.h	2013-06-11 20:47:52 +0000
+++ include/jdbc.h	2014-02-11 03:58:32 +0000
@@ -22,7 +22,7 @@
 #include "JavaVMSingleton.h"
 #include "sqltypes.h"
 
-#define JDBC_MODULE_NAMESPACE "http://www.zorba-xquery.com/modules/jdbc";
+#define JDBC_MODULE_NAMESPACE "http://zorba.io/modules/jdbc";
 
 #define INSTANCE_MAP_CONNECTIONS "JdbcInstanceMapConnections"
 #define INSTANCE_MAP_STATEMENTS "JdbcInstanceMapStatements"

=== modified file 'src/CMakeLists.txt'
--- src/CMakeLists.txt	2012-11-23 00:45:06 +0000
+++ src/CMakeLists.txt	2014-02-11 03:58:32 +0000
@@ -27,7 +27,7 @@
 INCLUDE_DIRECTORIES (${JAVA_INCLUDE_PATH})
 
 DECLARE_ZORBA_MODULE (
-  URI "http://www.zorba-xquery.com/modules/jdbc";
+  URI "http://zorba.io/modules/jdbc";
   VERSION 1.0
   FILE "jdbc.xq"
   LINK_LIBRARIES "${JAVA_JVM_LIBRARY}" ${zorba_util-jvm_module_LIBRARIES})

=== modified file 'src/jdbc.xq'
--- src/jdbc.xq	2013-08-09 09:37:05 +0000
+++ src/jdbc.xq	2014-02-11 03:58:32 +0000
@@ -1,7 +1,7 @@
-xquery version "3.0";
+jsoniq version "1.0";
 
 (:
- : Copyright 2006-2012 The FLWOR Foundation.
+ : Copyright 2006-2013 The FLWOR Foundation.
  :
  : Licensed under the Apache License, Version 2.0 (the "License");
  : you may not use this file except in compliance with the License.
@@ -17,14 +17,19 @@
  :)
 
 (:~
- : This module contains functions to connect to any JDBC datasource 
- : using jvm-util module to handle Java interaction.
+ : This module provides functions to communicate to JDBC datasources.
+ : For example, it provides functions to execute queries or updates
+ : using SQL.
+ : <p/>
+ : Results of queries are returned as sequences of JSON objects,
+ : one object per row. Basic SQL types are mapped to JSONiq types.
+ : All other types are mapped to string or base64Binary.
  :
  : @author Rodolfo Ochoa
  : @project DB Drivers/JDBC
  :)
 
-module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 declare namespace err = "http://www.w3.org/2005/xqt-errors";;
 declare namespace ver = "http://zorba.io/options/versioning";;
@@ -32,38 +37,61 @@
 declare option ver:module-version "1.0";
 
 (:~
- : This variable represents the NOT-SUPPORTED level for Isolation Levels in $options for 2.2 connect function.
+ : This variable represents the NOT-SUPPORTED level for Isolation Levels
+ : that can be passed as $options parameter to the connect function.
  :)
 declare variable $jdbc:NOT-SUPPORTED    := "NOT-SUPPORTED";
+
 (:~
- : This variable represents the READ-COMMITTED level for Isolation Levels in $options for 2.2 connect function.
+ : This variable represents the READ-COMMITTED level for Isolation Levels
+ : that can be passed as $options parameter to the connect function.
  :)
 declare variable $jdbc:READ-COMMITTED   := "READ-COMMITTED";
+
 (:~
- : This variable represents the READ-UNCOMMITTED level for Isolation Levels in $options for 2.2 connect function.
+ : This variable represents the READ-UNCOMMITTED level for Isolation Levels
+ : that can be passed as $options parameter to the connect function.
  :)
 declare variable $jdbc:READ-UNCOMMITTED := "READ-UNCOMMITTED";
+
 (:~
- : This variable represents the REPEATABLE-READ level for Isolation Levels in $options for 2.2 connect function.
+ : This variable represents the REPEATABLE-READ level for Isolation Levels
+ : that can be passed as $options parameter to the connect function.
  :)
 declare variable $jdbc:REPEATABLE-READ  := "REPEATABLE-READ";
+
 (:~
- : This variable represents the SERIALIZABLE level for Isolation Levels in $options for 2.2 connect function.
+ : This variable represents the SERIALIZABLE level for Isolation Levels
+ : that can be passed as $options parameter to the connect function.
  :)
 declare variable $jdbc:SERIALIZABLE     := "SERIALIZABLE";
 
-(:
- : 2 CONNECTION HANDLING
- :)
-
 (:~
- : Opens a connection to a database.
- : Returns a URI identifying the connection that has been opened. The implementing code determines from the $connection-config either explicitly (interpreting the driver attribute) or implicitly (using the type attribute) which driver it has to load.
- :
- : @param $connection-config json object that has the host and user informations.
- : @option "url" URL of the server, this option must be specified and should be declared according to JDBC specification.
- : @option "user" username for the server, this is optional.
- : @option "password" password for the server, this is optional.
+ : Opens a connection to a database with specified options.
+ : <p/>
+ : Returns a URI identifying the connection that has been opened. The
+ : JDBC driver to be used is either determined either from the
+ : connection string or the explicit type attribute.
+ : <p/>
+ :
+ : $config:
+ : <ul>
+ :   <li>url: JDBC connection information</li>
+ :   <li>user: name of the user used to connect</li>
+ :   <li>password: password used to conect</li>
+ : </ul>
+ : <p/>
+ :
+ : Connection configuration example:
+ : <pre>
+ : {
+ :   "url" : "jdbc:mysql://localhost/", 
+ :   "user" : "root",
+ :   "password" : ""
+ : }</pre>
+ : 
+ :
+ : @param $config object containing the connection and user information.
  :
  : @error SQL28000 Authentication failed.
  : @error SQL08001 Connection error.
@@ -71,129 +99,108 @@
  : @error SQL001 Descriptive error, see attached message.
  :
  : @return Return an identifier that represents the connection to the server.
- :
- : Connection coonfiguration example:
- : { "url" : "jdbc:mysql://localhost/", 
- :   "user" : "root",
- :   "password" : "" }
- : 
  :)
-declare %an:sequential function jdbc:connect(
-                                     $connection-config as object() ) as xs:anyURI external;
+declare %an:nondeterministic function jdbc:connect($config as object)
+  as anyURI external;
 
 (:~
  : Opens a connection to a database with specified options.
- : Returns a URI identifying the connection that has been opened. The implementing code determines from the $connection-config either explicitly (interpreting the driver attribute) or implicitly (using the type attribute) which driver it has to load.
- :
- : @param $connection-config json object that has the host and user informations.
- : @option "url" URL of the server, this option must be specified and should be declared according to JDBC specification.
- : @option "user" username for the server, this option is optional.
- : @option "password" password for the server, this option is optional.
- : @param $options json object that specifies the connection options.
- : @option "autocommit" The created connection will have autocommit turned on if the value the attribute is set to "true".
- : @option "readonly" The created connection will be readonly if the value of the attribute is set to "true".
- : @option "isolation-level" The created connection will have the specified transaction isolation level, 
- : the following string typed in-scope variables represent the different transaction isolation levels 
- : that this attribute can be set to:
- : - $jsql:READ-COMMITTED
- : - $jsql:READ-UNCOMMITTED
- : - $jsql:REPEATABLE-READ
- : - $jsql:SERIALIZABLE
- : if no isolation level is provided by the user the connection will be created with the default 
- : isolation level of the database.
- :
+ : <p/>
+ : Returns a URI identifying the connection that has been opened. The
+ : JDBC driver to be used is either determined either from the
+ : connection string or the explicit type attribute.
+ : <p/>
+ :
+ : $config:
+ : <ul>
+ :   <li>url: JDBC connection information</li>
+ :   <li>user: name of the user used to connect</li>
+ :   <li>password: password used to connect</li>
+ : </ul>
+ : <p/>
+ :
+ : $options:
+ : <ul>
+ :   <li>autocommit: boolean indicating whether autocommit is turned on or off</li>
+ :   <li>readonly: boolean whether the connection is read only or not</li>
+ :   <li>isolation-level: specify the isolation level for all transactions on
+ :     the connection.</li>
+ : </ul>
+ :
+ : @param $config object containing the connection and user information.
+ : @param $options object that specifies the connection options.
  :
  : @error SQL28000 Authentication failed.
  : @error SQL08001 Connection error.
  : @error SQL40003 Isolation level not supported.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an identifier that represents the connection to the server.
- :
- : Connection options example:
- : { "autocommit" : false, 
- :   "readonly"? : true,
- :   "isolation-level"? : $jdbc:READ-COMMITTED }
- : 
- :)
-declare %an:sequential function jdbc:connect(
-                                     $connection-config as object(), 
-                                     $options as object()?) as xs:anyURI external;
-
-(:~
- : Verify if a connection is still active.
- :
- : @param $connection-id The identifier to the connection to be verify.
- :
- : @error SQL08003 Connection doesn't exist
- : @error SQL001 Descriptive error, see error in attached message
- :
- : @return Returns true if connected.
- :)
-declare function jdbc:is-connected(
-                                     $connection-id as xs:anyURI) as xs:boolean external;
-
-(:~
- : Returns a set with options for a specified connection.
- :
- : @param $connection-id The identifier to the connection to be verify.
- :
- : @error SQL08003 Connection doesn't exist
- : @error SQL08000 Connection is closed
- : @error SQL001 Descriptive error, see error in attached message
- :
- : @return Returns and object with the connection options.
- : The returned options are equal to the options specified in function jdbc:connect. 
- : Consequently, the options are specified as follows:
- :    { "autocommit" : xs:boolean,
- :      "readonly" : xs:boolean,
- :      "isolation-level" : xs:string }
- :
- :)
-declare function jdbc:connection-options(
-                                      $connection-id as xs:anyURI) as object() external;
-
-(:
- : 3 TRANSACTIONS
- :)
-
-(:~
- : Commit current transaction from an active connection.
- :
- : @param $connection-id The identifier to the connection to be commited.
- : 
- : @error SQL08003 Connection doesn't exist
- : @error SQL08000 Connection is closed
- : @error SQL001 Descriptive error, see error in attached message
- :
- : @return This function returns an empty-sequence()
- :)
-declare %an:sequential function jdbc:commit(
-                                      $connection-id as xs:anyURI) as empty-sequence() external;
-
-(:~
- : Rollback the current transaction of a connection.
- :
- : @param $connection-id The identifier to the connection to be rollbacked.
- :
- : @error SQL08003 Connection doesn't exist
- : @error SQL08000 Connection is closed
- : @error SQL001 Descriptive error, see error in attached message
- :
- : @return This function returns an empty-sequence()
- :)
-declare %an:sequential function jdbc:rollback(
-                                      $connection-id as xs:anyURI) as empty-sequence() external;
-
-
-(:
- : 4 SIMPLE STATEMENTS
- :)
-
-(:~
- : Executes any kind of SQL statement. 
- :
- : @param $connection-id The identifier to an active connection.
+ : @return an identifier that represents the connection to the server.
+ :)
+declare %an:nondeterministic function jdbc:connect(
+  $config as object, 
+  $options as object?) as anyURI external;
+
+(:~
+ : Verify if a connection identified by the given URI exists
+ : and is active.
+ :
+ : @param $conn The identifier to the connection to be verified.
+ :
+ : @error SQL08003 Connection doesn't exist
+ : @error SQL001 Descriptive error, see error in attached message
+ :
+ : @return true if connected.
+ :)
+declare function jdbc:is-connected($conn as anyURI)
+  as boolean external;
+
+(:~
+ : Return the set of options for the specified connection.
+ :
+ : @param $conn The identifier to the connection.
+ :
+ : @error SQL08003 Connection doesn't exist
+ : @error SQL08000 Connection is closed
+ : @error SQL001 Descriptive error, see error in attached message
+ :
+ : @return object describing the connection options.
+ :)
+declare function jdbc:connection-options($conn as anyURI)
+  as object external;
+
+(:~
+ : Commit the current transaction.
+ :
+ : @param $conn The identifier to the connection to be committed.
+ : 
+ : @error SQL08003 Connection doesn't exist
+ : @error SQL08000 Connection is closed
+ : @error SQL001 Descriptive error, see error in attached message
+ :
+ : @return This function returns the empty-sequence.
+ :)
+declare %an:sequential function jdbc:commit($conn as anyURI)
+  as () external;
+
+(:~
+ : Rollback the current transaction.
+ :
+ : @param $conn The identifier to the connection to be rolled back.
+ :
+ : @error SQL08003 Connection doesn't exist
+ : @error SQL08000 Connection is closed
+ : @error SQL001 Descriptive error, see error in attached message
+ :
+ : @return This function returns the empty-sequence.
+ :)
+declare %an:sequential function jdbc:rollback($conn as anyURI)
+  as () external;
+
+(:~
+ : Executes any kind (updating and non-updating) of SQL query. 
+ :
+ : @param $conn The identifier to an active connection.
  : @param $sql The query string to be executed.
  : 
  : @error SQL08003 Connection doesn't exist.
@@ -203,13 +210,13 @@
  : @return Return an identifier that represents a DataSet.
  :)
 declare %an:sequential function jdbc:execute( 
-                                      $connection-id as xs:anyURI,
-                                      $sql as xs:string ) as xs:anyURI external;
+  $conn as anyURI,
+  $sql as string) as anyURI external;
 
 (:~
- : Executes non-updating SQL statements.
+ : Execute a non-updating SQL query.
  :
- : @param $connection-id The identifier to an active connection.
+ : @param $conn The identifier to an active connection.
  : @param $sql The query string to be executed.
  : 
  : @error SQL08003 Connection doesn't exist.
@@ -217,20 +224,16 @@
  : @error SQL005 The statement is Updating type.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an object with the result data rows from the query provided,
- :  the data rows are defined as follows:
- :   { column:value* }*
- :  Every row is represented by an object of column-value representation of the returned SQL result.
- :
+ : @return the result of the query each row being an object.
  :)
-declare function jdbc:execute-query( 
-                                      $connection-id as xs:anyURI, 
-                                      $sql as xs:string) as object()* external;
+declare %an:nondeterministic function jdbc:execute-query( 
+  $conn as anyURI, 
+  $sql as string) as object* external;
 
 (:~
- : Executes updating SQL statements.
+ : Execute an updating SQL query.
  :
- : @param $connection-id The identifier to an active connection.
+ : @param $conn The identifier to an active connection.
  : @param $sql The query string to be executed.
  : 
  : @error SQL08003 Connection doesn't exist.
@@ -238,21 +241,23 @@
  : @error SQL005 The statement is Read-only type.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Returns an xs:integer with the number of affected rows.
- :)
-declare function jdbc:execute-update(
-                                      $connection-id as xs:anyURI,
-                                      $sql as xs:string) as xs:integer external;
-
-
-(:
- :  5 PREPARED STATEMENTS
- :)
+ : @return the number of affected rows.
+ :)
+declare %an:sequential function jdbc:execute-update(
+  $conn as anyURI,
+  $sql as string) as integer external;
 
 (:~
- :  Creates a prepared statement for multiple executions with diferent values.
- :
- : @param $connection-id The identifier to an active connection.
+ : Creates a prepared statement for multiple executions with potentially
+ : different values.
+ : <p/>
+ :
+ : Example:
+ : <pre>
+ : jdbc:prepare-statement($conn, "SELECT * FROM users WHERE id=? AND age>?")
+ : </pre>
+ :
+ : @param $conn The identifier to an active connection.
  : @param $sql The query string to be executed.
  : 
  : @error SQL08003 Connection doesn't exist.
@@ -260,16 +265,13 @@
  : @error SQL001 Descriptive error, see error in attached message.
  :
  : @return Return an identifier that represents the prepared statement.
- :
- : Example:
- : jsql:prepare-statement($connection, "SELECT * FROM users WHERE id=? AND age>?")
  :)
 declare %an:sequential function jdbc:prepare-statement(
-                                      $connection-id as xs:anyURI,
-                                      $sql as xs:string) as xs:anyURI external;
+  $conn as anyURI,
+  $sql as string) as anyURI external;
 
 (:~
- : Set the value of the designated parameter with the given value, this function will assign only numeric values.
+ : Set the value of the designated parameter to the given numeric value for a prepared statement.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : @param $parameter-index The index from the parameter to be set.
@@ -280,15 +282,15 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
 declare %an:sequential function jdbc:set-numeric(
-                                      $prepared-statement as xs:anyURI, 
-                                      $parameter-index as xs:decimal, 
-                                      $value as xs:anyAtomicType) as empty-sequence() external;
+  $prepared-statement as anyURI, 
+  $parameter-index as decimal, 
+  $value as anyAtomicType) as () external;
 
 (:~
- : Set the value of the designated parameter with the given value, this function will assign only string values.
+ : Set the value of the designated parameter to the given string for a prepared statement.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : @param $parameter-index The index from the parameter to be set.
@@ -299,15 +301,15 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
 declare %an:sequential function jdbc:set-string(
-                                      $prepared-statement as xs:anyURI,
-                                      $parameter-index as xs:integer,
-                                      $value as xs:string) as empty-sequence() external;
+  $prepared-statement as anyURI,
+  $parameter-index as integer,
+  $value as string) as () external;
 
 (:~
- : Set the value of the designated parameter with the given value, this function will assign only boolean values.
+ : Set the value of the designated parameter to the given boolean for a prepared statement.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : @param $parameter-index The index from the parameter to be set.
@@ -318,15 +320,15 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
 declare %an:sequential function jdbc:set-boolean(
-                                      $prepared-statement as xs:anyURI, 
-                                      $parameter-index as xs:integer,
-                                      $value as xs:boolean) as empty-sequence() external;
+  $prepared-statement as anyURI, 
+  $parameter-index as integer,
+  $value as boolean) as () external;
 
 (:~
- : Set the value of the designated parameter with the given value, this function will assign only null values if possible.
+ : Set the value of the designated parameter to null for a prepared statement.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : @param $parameter-index The index from the parameter to be set.
@@ -336,16 +338,17 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
 declare %an:sequential function jdbc:set-null(
-                                      $prepared-statement as xs:anyURI,
-                                      $parameter-index as xs:integer) as empty-sequence() external;
+  $prepared-statement as anyURI,
+  $parameter-index as integer) as () external;
 
 (:~
- : Set the value of the designated parameter with the given value, 
- : this function will assign any value you send 
- : and it will try to cast to the correct type.
+ : Set the value of the designated parameter for a prepared statement.
+ : <p/>
+ : The value will be cast to the target type or raise an error
+ : if this fails.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : @param $parameter-index The index from the parameter to be set.
@@ -356,15 +359,15 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
 declare %an:sequential function jdbc:set-value(
-                                      $prepared-statement as xs:anyURI, 
-                                      $parameter-index as xs:decimal, 
-                                      $value as xs:anyAtomicType) as empty-sequence() external;
+  $prepared-statement as anyURI, 
+  $parameter-index as decimal, 
+  $value as anyAtomicType) as () external;
 
 (:~
- : Clears the current parameter values immediately.
+ : Clears all the parameters of the given prepared statement.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : 
@@ -372,10 +375,10 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
-declare %an:sequential function jdbc:clear-params(
-                                      $prepared-statement as xs:anyURI) as empty-sequence() external;
+declare %an:sequential function jdbc:clear-params($prepared-statement as anyURI)
+  as () external;
 
 (:~
  : Retrieves the number, types and properties of the prepared statement parameters.
@@ -391,19 +394,19 @@
  : The metadata node returned by this function is defined as follows:
  :   {
  :     columns: [{
- :       "name": xs:string,
- :       "type": xs:string
+ :       "name": string,
+ :       "type": string
  :       }]
  :   }
  : @option "name" The name of the column.
  : @option "type" The SQL type of the column.
  :)
-declare function jdbc:parameter-metadata(
-                                      $prepared-statement as xs:anyURI) as object() external;
+declare function jdbc:parameter-metadata($prepared-statement as anyURI)
+  as object external;
 
 (:~
- : Executes SQL statements prepared with 5.1 jsql:prepare-statement with values set
- : and returns an identifier to a Dataset.
+ : Executes any prepared statement returning an identifier to the resulting
+ : DataSet.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : 
@@ -411,13 +414,16 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an identifier that represents a DataSet.
+ : @return an identifier that represents the DataSet.
  :)
 declare %an:sequential function jdbc:execute-prepared(
-                                      $prepared-statement as xs:anyURI) as xs:anyURI external;
+  $prepared-statement as anyURI)
+  as anyURI external;
 
 (:~
- : Executes a non-updating SQL statement prepared with 5.1 jsql:prepare-statement.
+ : Execute a non-updating query that was prepared using jdbc:prepare-statement.
+ : <p/>
+ : Each row in the result is returned as an object.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : 
@@ -426,16 +432,14 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an object with the result data rows from the query processed with the parameter values provided,
- :  the data rows are defined as follows:
- :   { column:value* }*
- :  Every row is represented by an object of column-value representation of the returned SQL result.
+ : @return the resulting rows as a sequence of objects.
  :)
-declare function jdbc:execute-query-prepared(
-                                      $prepared-statement as xs:anyURI) as object()* external;
+declare %an:nondeterministic function jdbc:execute-query-prepared(
+  $prepared-statement as anyURI)
+  as object* external;
 
 (:~
- : Executes an updating SQL statement prepared with 5.1 jsql:prepare-statement.
+ : Execute an updating query that was prepared using jdbc:prepare-statement.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : 
@@ -444,13 +448,13 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Returns an xs:integer with the number of affected rows.
+ : @return the number of affected rows.
  :)
-declare function jdbc:execute-update-prepared(
-                                      $prepared-statement as xs:anyURI) as xs:integer external;
+declare %an:sequential function jdbc:execute-update-prepared($prepared-statement as anyURI)
+  as integer external;
 
 (:~
- : Closes and frees from memory any prepared SQL statement created with jdbc:prepare-statement
+ : Close a prepared statement and release all related resources.
  :
  : @param $prepared-statement The identifier to a prepared statement.
  : 
@@ -458,18 +462,21 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
- :)
-declare %an:sequential function jdbc:close-prepared(
-                                      $prepared-statement as xs:anyURI) as empty-sequence() external;
-
-
-(:
- :  6 DATASETS
- :)
+ : @return This function returns the empty-sequence.
+ :)
+declare %an:sequential function jdbc:close-prepared($prepared-statement as anyURI)
+  as () external;
 
 (:~
- : This function returns a sequence of objects representing the rows of data from a non-updating query.
+ : Returns the result of a non-updating query.
+ : <p/>
+ : Each row of the result is returned as an object.
+ : <pre>
+ :   {
+ :     "column1" : value,
+ :     ...
+ :   }
+ : </pre>
  :
  : @param $dataset-id The identifier to a DataSet.
  : 
@@ -477,44 +484,45 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an object with the result data rows from the DataSet provided,
- :  the data rows are defined as follows:
- :   { column:value* }*
- :  Every row is represented by an object of column-value representation of the returned SQL result.
+ : @return The result of the given DataSet.
  :)
-declare function jdbc:result-set(
-                                      $dataset-id as xs:anyURI) as object()* external;
+declare function jdbc:result-set($dataset-id as anyURI)
+  as object* external;
 
 (:~
  : Return the metadata of the result of a particular DataSet.
- :
- : @param $dataset-id The identifier to a DataSet.
- : 
- : @error SQL008 DataSet doesn't exist.
- : @error SQL08000 Connection is closed.
- : @error SQL001 Descriptive error, see error in attached message.
- :
- : @return This function returns the metadata associated with an executed DataSet. More in detail, it returns information about column names, types, and whether a column can contain a null value.
- : The metadata information can only be returned for DataSets that have been executed explicitly using the jsql:execute function.
- : 
- : The metadata node returned by this function is defined as follows:
+ : <p/>
+ : The information contains the column names, types and whether a column is nillable.
+ : The structure of the returned object is as follows:
+ : <p/>
+ : <pre>
  : {
  :   "columns": [ {
- :       "name": xs:string,
- :       "type": xs:string,
- :       "autoincrement"? = xs:boolean,
- :       "nillable"? = xs:boolean } * ]
+ :       "name": string,
+ :       "type": string,
+ :       "autoincrement"? = boolean,
+ :       "nillable"? = boolean } * ]
  : }
- : @option "name" The name of the column.
- : @option "type" The SQL type of the column.
- : @option "autoincrement" is true if this column is automatically maintained.
- : @option "nillable" If the colums can contain NULL values this attribute will be set to true.
- :
- : If the query is an updating query, then the result object will return the number of affected rows like:
- : { "affectedrows": xs:integer }
+ : </pre>
+ :
+ : <p/>
+ : If the query is an updating query, then the result object will return the number of affected rows:
+ : <pre>{ "affectedrows": integer }</pre>
+ : <p/>
+ :
+ : The information can only be returned for DataSets that have been executed
+ : using the jdbc:execute function.
+ :
+ : @param $dataset-id The identifier to a DataSet.
+ : 
+ : @error SQL008 DataSet doesn't exist.
+ : @error SQL08000 Connection is closed.
+ : @error SQL001 Descriptive error, see error in attached message.
+ :
+ : @return the metadata associated with the given DataSet. 
  :)
-declare function jdbc:metadata(
-                                      $dataset-id as xs:anyURI) as object() external;
+declare function jdbc:metadata($dataset-id as anyURI)
+  as object external;
 
 (:~
  : Return the number of affected rows of a particular DataSet.
@@ -525,13 +533,13 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Returns an xs:integer with the number of affected rows.
+ : @return the number of affected rows.
  :)
-declare function jdbc:affected-rows(
-                                      $dataset-id as xs:anyURI) as xs:integer external;
+declare function jdbc:affected-rows($dataset-id as anyURI)
+  as integer external;
 
 (:~
- : Closes and free resources from a particular DataSet.
+ : Close a DataSet and free all related resources.
  :
  : @param $dataset-id The identifier to a DataSet.
  : 
@@ -539,15 +547,28 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return This function returns an empty-sequence()
+ : @return This function returns the empty-sequence.
  :)
 declare %an:sequential function jdbc:close-dataset(
-                                      $dataset-id as xs:anyURI) as empty-sequence() external;
+  $dataset-id as anyURI) as () external;
 
 (:~
- : Return the list of tables from a connection
+ : Return the list of tables in a database.
+ : <p/>
+ : The result is a sequence of objects each containing all the metadata
+ : for a particular table.
+ : <p/>
+ : For example,
+ : <pre>
+ : {
+ :  "TABLE_SCHEMA" : "demo",
+ :  "TABLE_NAME" : "faq",
+ :  "TABLE_TYPE" : "BASE TABLE",
+ :  ...
+ : }
+ : </pre>
  :
- : @param $connection-id The identifier to a connection.
+ : @param $conn The identifier to a connection.
  : @param $catalog A filter of the catalog name of the tables.
  :             Send empty-sequence for all tables.
  : @param $schema A filter of the schema name of the tables.
@@ -558,34 +579,40 @@
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an object with the result data rows from the query provided,
- :  the data rows are defined as follows:
- :   { column:value* }*
- :  Every row is represented by an object of column-value representation of the returned SQL result.
+ : @return a sequence of objects one for each table.
  :
  :)
 declare %an:sequential function jdbc:tables(
-                                      $connection-id as xs:anyURI, 
-                                      $catalog as xs:string?, 
-                                      $schema as xs:string?, 
-                                      $table as xs:string?) as object()* external;
+  $conn as anyURI, 
+  $catalog as string?, 
+  $schema as string?, 
+  $table as string?) as object* external;
 
 (:~
- :
- : Return the list of tables from a connection
- :
- : @param $connection-id The identifier to a connection.
+ : Return the list of tables in a database.
+ : <p/>
+ : The result is a sequence of objects each containing all the metadata
+ : for a particular table.
+ : <p/>
+ : For example,
+ : <pre>
+ : {
+ :  "TABLE_SCHEMA" : "demo",
+ :  "TABLE_NAME" : "faq",
+ :  "TABLE_TYPE" : "BASE TABLE",
+ :  ...
+ : }
+ : </pre>
+ :
+ : @param $conn The identifier to a connection.
  :
  : @error SQL08000 Connection is closed.
  : @error SQL001 Descriptive error, see error in attached message.
  :
- : @return Return an object with the result data rows from the query provided,
- :  the data rows are defined as follows:
- :   { column:value* }*
- :  Every row is represented by an object of column-value representation of the returned SQL result.
+ : @return a sequence of objects one for each table.
  :)
-declare %an:sequential function jdbc:tables(
-                                      $connection-id as xs:anyURI) as object()*
+declare %an:sequential function jdbc:tables($conn as anyURI)
+  as object*
 {
-	jdbc:tables($connection-id, (), (), ())
+	jdbc:tables($conn, (), (), ())
 };

=== modified file 'src/jdbc.xq.src/connection/connectionoptions.cpp'
--- src/jdbc.xq.src/connection/connectionoptions.cpp	2013-01-29 21:33:07 +0000
+++ src/jdbc.xq.src/connection/connectionoptions.cpp	2014-02-11 03:58:32 +0000
@@ -28,11 +28,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStrUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStrUUID = JdbcModule::getStringArg(args, 0);
 
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lStrUUID, INSTANCE_MAP_CONNECTIONS);
 

=== modified file 'src/jdbc.xq.src/connection/isconnected.cpp'
--- src/jdbc.xq.src/connection/isconnected.cpp	2012-12-27 22:23:41 +0000
+++ src/jdbc.xq.src/connection/isconnected.cpp	2014-02-11 03:58:32 +0000
@@ -28,10 +28,11 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lConnectionUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION  
   jboolean isClosed = JNI_FALSE;
   JDBC_MODULE_TRY
-    String lConnectionUUID = JdbcModule::getStringArg(args, 0);
 
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lConnectionUUID, INSTANCE_MAP_CONNECTIONS);
 

=== modified file 'src/jdbc.xq.src/connection/tables.cpp'
--- src/jdbc.xq.src/connection/tables.cpp	2013-06-12 14:34:44 +0000
+++ src/jdbc.xq.src/connection/tables.cpp	2014-02-11 03:58:32 +0000
@@ -49,13 +49,13 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStrUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   jobject result=NULL;
 
   JDBC_MODULE_TRY
 
-    String lStrUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lStrUUID, INSTANCE_MAP_CONNECTIONS);
 
     jobject oDatabaseMetadata = env->CallObjectMethod(oConnection, jConnection.getMetadata);

=== modified file 'src/jdbc.xq.src/datasets/affectedrows.cpp'
--- src/jdbc.xq.src/datasets/affectedrows.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/datasets/affectedrows.cpp	2014-02-11 03:58:32 +0000
@@ -28,12 +28,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     zorba::ItemFactory* itemFactory = Zorba::getInstance(0)->getItemFactory();
 
     jobject oStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_STATEMENTS);

=== modified file 'src/jdbc.xq.src/datasets/metadata.cpp'
--- src/jdbc.xq.src/datasets/metadata.cpp	2013-01-05 01:04:21 +0000
+++ src/jdbc.xq.src/datasets/metadata.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_STATEMENTS);
 
     zorba::ItemFactory* itemFactory = Zorba::getInstance(0)->getItemFactory();

=== modified file 'src/jdbc.xq.src/datasets/resultset.cpp'
--- src/jdbc.xq.src/datasets/resultset.cpp	2012-12-27 22:23:41 +0000
+++ src/jdbc.xq.src/datasets/resultset.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   jobject result=NULL;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_STATEMENTS);
 
     int iUpdateCount = env->CallIntMethod(oPreparedStatement, jPreparedStatement.getUpdateCount);

=== modified file 'src/jdbc.xq.src/prepared/clearparams.cpp'
--- src/jdbc.xq.src/prepared/clearparams.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/prepared/clearparams.cpp	2014-02-11 03:58:32 +0000
@@ -28,12 +28,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     env->CallVoidMethod(oPreparedStatement, jPreparedStatement.clearParameters);

=== modified file 'src/jdbc.xq.src/prepared/closeprepared.cpp'
--- src/jdbc.xq.src/prepared/closeprepared.cpp	2013-01-05 01:04:21 +0000
+++ src/jdbc.xq.src/prepared/closeprepared.cpp	2014-02-11 03:58:32 +0000
@@ -29,9 +29,9 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
-  
-  String lStatementUUID = JdbcModule::getStringArg(args, 0);
 
   JdbcModule::deleteObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 

=== modified file 'src/jdbc.xq.src/prepared/executeprepared.cpp'
--- src/jdbc.xq.src/prepared/executeprepared.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/prepared/executeprepared.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
   
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     env->CallBooleanMethod(oPreparedStatement, jPreparedStatement.execute);

=== modified file 'src/jdbc.xq.src/prepared/executequeryprepared.cpp'
--- src/jdbc.xq.src/prepared/executequeryprepared.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/prepared/executequeryprepared.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   jobject result=NULL;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     result = env->CallObjectMethod(oPreparedStatement, jPreparedStatement.executeQuery);

=== modified file 'src/jdbc.xq.src/prepared/executeupdateprepared.cpp'
--- src/jdbc.xq.src/prepared/executeupdateprepared.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/prepared/executeupdateprepared.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     int rowCount = env->CallIntMethod(oPreparedStatement, jPreparedStatement.executeUpdate);

=== modified file 'src/jdbc.xq.src/prepared/parametermetadata.cpp'
--- src/jdbc.xq.src/prepared/parametermetadata.cpp	2012-12-27 22:54:36 +0000
+++ src/jdbc.xq.src/prepared/parametermetadata.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     jobject oParameterMetaData = env->CallObjectMethod(oPreparedStatement, jPreparedStatement.getParameterMetaData);

=== modified file 'src/jdbc.xq.src/prepared/setboolean.cpp'
--- src/jdbc.xq.src/prepared/setboolean.cpp	2012-12-27 22:23:41 +0000
+++ src/jdbc.xq.src/prepared/setboolean.cpp	2014-02-11 03:58:32 +0000
@@ -30,12 +30,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     long index = (long)JdbcModule::getItemArg(args, 1).getLongValue();

=== modified file 'src/jdbc.xq.src/prepared/setnull.cpp'
--- src/jdbc.xq.src/prepared/setnull.cpp	2013-01-03 01:26:52 +0000
+++ src/jdbc.xq.src/prepared/setnull.cpp	2014-02-11 03:58:32 +0000
@@ -28,12 +28,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     jobject oParameterMetadata = env->CallObjectMethod(oPreparedStatement, jPreparedStatement.getParameterMetaData);

=== modified file 'src/jdbc.xq.src/prepared/setnumeric.cpp'
--- src/jdbc.xq.src/prepared/setnumeric.cpp	2012-12-27 22:23:41 +0000
+++ src/jdbc.xq.src/prepared/setnumeric.cpp	2014-02-11 03:58:32 +0000
@@ -30,12 +30,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     long index = (long)JdbcModule::getItemArg(args, 1).getLongValue();

=== modified file 'src/jdbc.xq.src/prepared/setstring.cpp'
--- src/jdbc.xq.src/prepared/setstring.cpp	2012-12-27 22:23:41 +0000
+++ src/jdbc.xq.src/prepared/setstring.cpp	2014-02-11 03:58:32 +0000
@@ -30,12 +30,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     long index = (long)JdbcModule::getItemArg(args, 1).getLongValue();

=== modified file 'src/jdbc.xq.src/prepared/setvalue.cpp'
--- src/jdbc.xq.src/prepared/setvalue.cpp	2013-01-03 09:35:44 +0000
+++ src/jdbc.xq.src/prepared/setvalue.cpp	2014-02-11 03:58:32 +0000
@@ -30,12 +30,12 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStatementUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lStatementUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oPreparedStatement = JdbcModule::getObject(aDynamincContext, lStatementUUID, INSTANCE_MAP_PREPAREDSTATEMENTS);
 
     long index = (long)JdbcModule::getItemArg(args, 1).getLongValue();

=== modified file 'src/jdbc.xq.src/statements/execute.cpp'
--- src/jdbc.xq.src/statements/execute.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/statements/execute.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,13 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lConnectionUUID = JdbcModule::getStringArg(args, 0);
+  String lQuery = JdbcModule::getStringArg(args, 1);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lConnectionUUID = JdbcModule::getStringArg(args, 0);
-    String lQuery = JdbcModule::getStringArg(args, 1);
 
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lConnectionUUID, INSTANCE_MAP_CONNECTIONS);
 

=== modified file 'src/jdbc.xq.src/statements/executequery.cpp'
--- src/jdbc.xq.src/statements/executequery.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/statements/executequery.cpp	2014-02-11 03:58:32 +0000
@@ -29,12 +29,13 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lConnectionUUID = JdbcModule::getStringArg(args, 0);
+  String lQuery = JdbcModule::getStringArg(args, 1);
+
   CHECK_CONNECTION
   jobject result=NULL;
 
   JDBC_MODULE_TRY
-    String lConnectionUUID = JdbcModule::getStringArg(args, 0);
-    String lQuery = JdbcModule::getStringArg(args, 1);
 
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lConnectionUUID, INSTANCE_MAP_CONNECTIONS);
 

=== modified file 'src/jdbc.xq.src/statements/executeupdate.cpp'
--- src/jdbc.xq.src/statements/executeupdate.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/statements/executeupdate.cpp	2014-02-11 03:58:32 +0000
@@ -30,12 +30,13 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lConnectionUUID = JdbcModule::getStringArg(args, 0);
+  String lQuery = JdbcModule::getStringArg(args, 1);
+
   CHECK_CONNECTION
   Item result;
 
   JDBC_MODULE_TRY
-    String lConnectionUUID = JdbcModule::getStringArg(args, 0);
-    String lQuery = JdbcModule::getStringArg(args, 1);
     
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lConnectionUUID, INSTANCE_MAP_CONNECTIONS);
 

=== modified file 'src/jdbc.xq.src/transactions/commit.cpp'
--- src/jdbc.xq.src/transactions/commit.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/transactions/commit.cpp	2014-02-11 03:58:32 +0000
@@ -28,11 +28,11 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lStrUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
 
   JDBC_MODULE_TRY
-    String lStrUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lStrUUID, INSTANCE_MAP_CONNECTIONS);
 
     env->CallVoidMethod(oConnection, jConnection.commit);

=== modified file 'src/jdbc.xq.src/transactions/rollback.cpp'
--- src/jdbc.xq.src/transactions/rollback.cpp	2012-12-27 22:13:59 +0000
+++ src/jdbc.xq.src/transactions/rollback.cpp	2014-02-11 03:58:32 +0000
@@ -28,11 +28,11 @@
                            const zorba::StaticContext* aStaticContext,
                            const zorba::DynamicContext* aDynamincContext) const
 {
+  String lConnectionUUID = JdbcModule::getStringArg(args, 0);
+
   CHECK_CONNECTION
 
   JDBC_MODULE_TRY
-    String lConnectionUUID = JdbcModule::getStringArg(args, 0);
-
     jobject oConnection = JdbcModule::getObject(aDynamincContext, lConnectionUUID, INSTANCE_MAP_CONNECTIONS);
 
     jclass cConnection = jConnection.classID;

=== modified file 'test/Queries/01-creatingDB.xq'
--- test/Queries/01-creatingDB.xq	2013-02-08 09:40:54 +0000
+++ test/Queries/01-creatingDB.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/",

=== modified file 'test/Queries/02-select.xq'
--- test/Queries/02-select.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/02-select.xq	2014-02-11 03:58:32 +0000
@@ -1,12 +1,17 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
+
+let $conn := {
+  "url": "jdbc:mysql://localhost:3307/",
+  "user" : "root",
+  "password" : ""})
+return
+  jdbc:execute-update($conn, "CREATE DATABASE /*!32312 IF NOT EXISTS*/`School02` /*!40100 DEFAULT CHARACTER SET latin1 */;");
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/",
   "user" : "root",
   "password" : ""});
   
-jdbc:execute-update($connection, "CREATE DATABASE /*!32312 IF NOT EXISTS*/`School02` /*!40100 DEFAULT CHARACTER SET latin1 */;");
-  
 jdbc:execute-update($connection, "USE `School02`;");
 
 (: Table structures :)

=== modified file 'test/Queries/03-connect-options.xq'
--- test/Queries/03-connect-options.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/03-connect-options.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/",

=== modified file 'test/Queries/04-set-null.xq'
--- test/Queries/04-set-null.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/04-set-null.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/?generateSimpleParameterMetadata=true",

=== modified file 'test/Queries/05-result-set.xq'
--- test/Queries/05-result-set.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/05-result-set.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/",

=== modified file 'test/Queries/06-prepare.xq'
--- test/Queries/06-prepare.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/06-prepare.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/",

=== modified file 'test/Queries/07-prepare.xq'
--- test/Queries/07-prepare.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/07-prepare.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/?generateSimpleParameterMetadata=true",

=== modified file 'test/Queries/08-deletingDB.xq'
--- test/Queries/08-deletingDB.xq	2013-06-11 20:47:52 +0000
+++ test/Queries/08-deletingDB.xq	2014-02-11 03:58:32 +0000
@@ -1,4 +1,4 @@
-import module namespace jdbc = "http://www.zorba-xquery.com/modules/jdbc";;
+import module namespace jdbc = "http://zorba.io/modules/jdbc";;
 
 variable $connection := jdbc:connect({
   "url": "jdbc:mysql://localhost:3307/",
@@ -56,6 +56,7 @@
 INSERT  INTO `students`(`idStudent`,`Name`,`Address`,`Birthday`,`Weight`) VALUES (1,'Rodolfo Ochoa','  10 Van De Graaff Dr # 1  Burlington, MA 01803','2012-12-06',160),(2,'Dana Florescu','10 Van De Graaff Dr # 1  Burlington, MA 01803','2012-12-13',150),(3,'Cezar Andrei','  10 Van De Graaff Dr # 1  Burlington, MA 01803','2012-12-27',160);
 ");
 
+trace(jdbc:tables($connection), "tables");
 
 if (jdbc:is-connected($connection))
  then { true() }

-- 
Mailing list: https://launchpad.net/~zorba-coders
Post to     : zorba-coders@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zorba-coders
More help   : https://help.launchpad.net/ListHelp

Reply via email to