-
Notifications
You must be signed in to change notification settings - Fork 9
ibrewster/p4d
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
p4d is a Python Database API 2.0 compliant driver for the 4D (4th Dimension) database server. As such, usage should be familiar to anyone who has used any python database modules before. This module is based off of a C library provided by 4D, and integrated with Python using CFFI. As such, installation of this module does require CFFI. v1.8 2023-01-13: - Fix datatype in C library to properly handle characters >128 v1.7 2017-10-26: - Handle decoding of strings from 4D when the string contains corrupted data - Change "Binary" data type to subclass of "bytes" rather than subclass of "str" v1.6.1 2017-10-13: - Fix potential issue where memory is freed too soon v1.6 2017-10-12: - Don't close the connection when calling close on a cursor - Fix some potential buffer overflows when performing queries with many columns v1.5 2017-10-06: - explicitly set cursor.result to none when closing connection to avoid possible double-free issue v1.4 2017-07-21: - Add port number as optional parameter to connect call - Fix includes in C code needed for proper compilation on some newer OS versions v1.3 2016-10-05: - Properly decode integer result fields on python3 v1.2 2016-07-15: - Fix bug that could cause strings to become garbage when doing an insert/update with long strings v1.1 2016-02-19: - Fix bug where the inability to prepare a query prevented the query from being run at all. v1.0 2016-02-11: - Enable cursor/connection to work as context managers - Wrap all queries in a transaction block v0.9 2016-02-10: - Fix bug that called .decode() on a str object in python 3 - Add support for "pyformat" style parameter markers - Add support for "format" style parameter markers - Add support for "named" style parameter markers v0.8 2015-11-24: - Changes for python 3 compatibility v0.7 2015-09-30: - Fix bug with running multiple queries in a row on the same cursor v0.6 2015-02-17: - Fix bug with handling of time values containing milliseconds v0.5.1 2014-12-23: - Improved method of freeing memory used by the fetchone call v0.5 2014-12-22: - Fix remaining memory leak with execute many call. Turns out there were leaks both in the C library as well as in how I was calling the library. Testing now shows memory usage stable at 11MB when processing a 1,000,000 record result set. v0.4 2014-12-18: - Fix memory leak when doing an execute many call (there may still be a small leak with individual executes, depending on how CFFI handles memory) - Fix performance issue when performing large executemany queries v0.3 2014-12-17: - improve performance of module when receiving large datasets containing date/time values. - Close statement after execution when doing an insert many - Fix potential issue when doing large "execute many" queries v0.2 2014-12-16: - Fixed lib4d_sql bug preventing proper paging for some queries - Fixed lib4d_sql bug preventing use of "long" queries or argument strings - Fixed lib4d_sql bug not preparing the queries on the server before running - Changed default pagesize parameter back to 100 since paging should now work v0.1.1: -Inital release
About
Python database module for the 4D database system
Resources
Stars
Watchers
Forks
Packages 0
No packages published