B4J Library New sqlite-jdbc version 3.31.1 (2020.05.05)

Kevin Hartin

Active Member
Licensed User
what version Sqlite database does this work with?

I have queries that use INSTR and REGEX, which I believe are in Sqlite V3 Databases and run fine on my database using SQLiteStudio 3.2.1 from my desktop, but when I try to use the same queries in B4J I get errors such as java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such function: INSTR)

thanks,
kev
 

Kevin Hartin

Active Member
Licensed User

I think my question is redundant, as I have again got the SQL queries to work!!!

I was originally wanting to populate a Tableview with the results, but then decided to change to a B4Xtable instead. This somehow broke the SQL, even without trying to populate the B4Xtable. Removing the B4Xtable in Designer and replacing with a Tableview fixed it.

I cannot see how this action in the form designer could be related to running the SQL, but it somehow is... Erel?

Kev
 

Claudio Oliveira

Active Member
Licensed User
Longtime User

Hi Kevin
I don't think this is related to jdbc version, and this post of yours shows it.
According to SQLite documentation (which you can find HERE), REGEX depends on the existence of a user function regexp() which is not defined in SQLite by default, so I believe your SQLIteStudio DLL version implements the regexp() function.
I use SQLiteExpert with the "official" SQLite DLL which does not implement regexp().
As SQLite is open source, there are several DLL versions around which are not supported/maintained by the sqlite.org team, so I would refrain from using such versions.

As for B4XTable breaking your code, you should start a new thread on this, as Erel suggested.
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…