-
-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PREPARE does not work with VARLENGTH groups (ocesql compat) #79
Comments
Can you confirm that
Thanks |
9(8), but otherwise: yes - and this time I've also checked the level numbers |
I made the following modifications (in my internal repo):
Note: the check in 1) for now only applies to I also had to modify a few test cases that were not properly exposing the problem detailed in this very issue. The following test is precompiled and passes:
and generates the following output:
|
- Added support for "smart" cursor initialization (#88) - Added support for EXECUTE prepared-statement INTO #(87) - Fixed a logging problem (#84) - Fixed "wrong generated COBOL in 1.0.16" (#83) - Fixed "missing "close" for spdlog?" (#82) - Added support for using prepared statements in cursors (#81) - Variable length fields indicators are now 32-bit long by default (#80) - Added support for using variable length fields with prepared statements (#79) - Added upport for using group fields in INSERT and SELECT..INTO statements (#6) - Added support for more connection string formats (including ocesql compatibility) (#16) - Added Support for DISCONNECT ALL (#89) - Performed some refactoring to improve code size - Fixed a few memory leaks
fixed (per release notes) |
Not sure if this should be reopened, but Thoughts? |
The |
I removed the |
This is a maintenance pre-release for GixSQL. It fixes a few issues and adds two new databases drivers (Oracle and SQLite). The next "standard" release (presumably v1.0.18) will have feature parity for all database drivers. - Added new Oracle driver, based on ODPI - Added new SQLite driver - Solution for "PG: issue with prepared statements" (#99) - Solution for "PCursors cannot be re-opened after close" (#98) - Solution for "libgixpp: setStatus is called for errors without DBI parm passed - sets SQLERRM" (#94) - Solution for "error handling (especially for 07001)" (#92) - Solution for "show-stopper bug in pgsql_prepare" (#91) - Solution for "PREPARE does not work with VARLENGTH groups (ocesql compat)" (#79) - Partial solution for "PREPARE does not work with VARLENGTH groups (ocesql compat)" (#68) - Solution for "The PostgreSQL driver needs START TRANSACTION before using cursors" (#14) - Solution for "FR: support EXEC SQL VAR" (#21) - Fixed a bug in "problems with "codegen / logic issue for "GIXSQLCursorDeclareParams" (#88) - Fixed COMP-3 handling in drivers other than PostgreSQL - Rewrote the test suite (still MSTest-based) to dynamically generate a matrix of test to be run on the various platforms/database drivers
- Added new Oracle driver, based on ODPI - Added new SQLite driver - All the drivers have been updated and now implement the complete set of supported features - Solution for "PG: issue with prepared statements" (#99) - Solution for "PCursors cannot be re-opened after close" (#98) - Solution for "libgixpp: setStatus is called for errors without DBI parm passed - sets SQLERRM" (#94) - Solution for "error handling (especially for 07001)" (#92) - Solution for "show-stopper bug in pgsql_prepare" (#91) - Solution for "PREPARE does not work with VARLENGTH groups (ocesql compat)" (#79) - Partial solution for "PREPARE does not work with VARLENGTH groups (ocesql compat)" (#68) - Solution for "The PostgreSQL driver needs START TRANSACTION before using cursors" (#14) - Solution for "FR: support EXEC SQL VAR" (#21) - Fixed a bug in "problems with "codegen / logic issue for "GIXSQLCursorDeclareParams" (#88) - Solution for "FR: allow mapping of "NoRecCode"' (#95) - added --no-rec-code parameter to gixpp - Tokens in the parser have been labeled to improve diagnostics (pulled PR #96 by @GitMensch) - Fixed COMP-3 handling in drivers other than PostgreSQL - Rewrote the test suite (still MSTest-based) to dynamically generate a matrix of test to be run on the various platforms/database drivers - Added options for parameter generation in gixpp (-a was removed) - Added new GIXSQL_FIXUP_PARAMS option for runtime, to automatically convert parameter format in prepared statments - "Native" cursors are now the default for the PostgreSQL driver - "Smart" cursor initialization is now the default for all cursors, including those declared in WORKING-STORAGE (-L was removed from gixpp), should fix #101 - Removed dynamic cursor emulation from the ODBC driver when using PostgreSQL
mentioned to be fixed, so closing for now |
`PREPARE in OCESQL only worked with VARLENGTH groups, rechecking with GIXSQL 1.0.16 shows it only works with plain PIC X fields.
Reason: while the length is passed as 0 (which I guess means: get it from varlength)
GIXSQLPrepareStatement
directly callsget_hostref_or_literal
which just takes the passed data as plain string instead of getting the length out of the group and using that with the length offset.The text was updated successfully, but these errors were encountered: