Skip to content
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

Data Types #3

Open
topwizprogramming opened this issue Nov 2, 2022 · 3 comments
Open

Data Types #3

topwizprogramming opened this issue Nov 2, 2022 · 3 comments

Comments

@topwizprogramming
Copy link

Are you maintaining the SQLiteODBC driver itself or just build scripts? The version at http://www.ch-werner.de/sqliteodbc/ is over two years old. SQLite itself was updated about a month ago.

A problem has been found. When a select uses the cast, date, or time function to return a portion of a datetime column, ODBC reports the data type id as -9 (SQL_WVARCHAR) and the data type name is blank.

If a fix is possible for this, who would be the one to do that?

@pchemguy
Copy link
Owner

pchemguy commented Nov 2, 2022

I do not really maintain either. Some time ago, I wanted to recompile the SQLiteODBC driver to include the current SQLite release. I patched the build scripts from http://www.ch-werner.de/sqliteodbc/ to achieve this goal. The patched script are included in this repository. If they are placed inside the source http://www.ch-werner.de/sqliteodbc distro (they should replace original files), it should be possible to build the Windows version of the driver under MSYS/MinGW. I have recompiled the driver 14 days ago and placed the binaries in https://github.com/pchemguy/SQLite-ICU-MinGW/tree/master/bin-SQLiteODBC-Win-x32x64. These are x32 and x64 analogs of the installers provided on the original web site. At least one person reported using it (probably the x64 version).

Now, the bug might be due to either the outdated SQLite library or the ODBC wrapper. If it is the former, the copy in my repository might fix the issue. I have not done anything to the ODBC wrapper module, so if there is a bug in the wrapper, the updated driver will not solve it.

Also, I have never tried to build a Linux version. My patched scripts work under MSYS/MinGW environment, but I doubt they can be used as is to build Linux binaries. I cannot provide any help here. The only thing I might say is that the biggest problem was to clean up the messy build scripts. They only required, I think, a couple functional fixes to reproduce the outdated copy. Replacing the hardcoded version of SQLite required additional fixes, but I cannot recall right now how hard that part was. I spent most of the time cleaning up the original scripts to the point where I could follow the process to see what needed to be modified.

@topwizprogramming
Copy link
Author

If I understand you correctly, the latest version of SQLite is built into the drivers in your installers.

@pchemguy
Copy link
Owner

pchemguy commented Nov 3, 2022

This is correct. The default builds of the original SQLiteODBC drivers provided on the website embed the SQLite library, just an old copy. I patched the build scripts, so that the current SQLite release is embedded instead of an outdated hard-coded version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants