You are not logged in.
looks like regression?
Before this works as expected:
/root/?sql=select+RowID,*+from+ZV+where+status=0+and%20ename+like+'Heinz%20Buder'
Now it comes exception in SynSQLite3.pas
in function TSQLRequest.Prepare(DB: TSQLite3DB; const SQL: RawUTF8): integer;
But without like it works:
/root/?sql=select+RowID,*+from+ZV+where+status=0+and%20ename+=+'Heinz%20Buder'
Offline
What is the exception error message?
What is the executed SQL statement?
I just run SynDBExplorer on the SQLite3 database generated by TestSQL3.exe and the following requests work as expected.
select * from ADest where signature like '%1'
select * from ADest where signature like '%URI%'
Offline
The error message is:
SQL logic error or missing database
The sql is:
select * from ZV where ename like '%Heinz%'
Last edited by danielkuettner (2016-01-26 17:57:22)
Offline
It's an external firebird table. ORM goes over virtual sqlite table. I've never used SynDBExplorer. Can I simulate this behavior with it?
If I declare the plain sql in line 1270 (function TSQLRestServerDB.GetMainList), this exception will be raised.
I come to vt_BestIndex, there the exit in line 1224 will called (invalid parameter) and the result stays on SQLITE_ERROR.
Before updating mORMot all works fine.
(I have XE6).
Offline
Perhaps my sqlite version is to old for mORMot? But I have obj files from svn from today?
With dynamic sqlite dll ((3.8.5) it works, but I used static. How can I check the version of statical sqlite?
Last edited by danielkuettner (2016-01-26 19:25:48)
Offline
From http://synopse.info/files/sqlite3obj.7z
as stated by the doc
http://synopse.info/files/html/Synopse% … l#TITL_113
Offline
SynSQLite3Static will now identify at application started if the linked sqlite3.obj is outdated, according to source code expectations:
- it would display a PITA error popup under Windows, and log in the exe folder for all platforms;
- it would help reduce unexpected compatibility issues, and ensure best performance and features set, as occurred with you.
Offline
Right now I've tested with sqlite3.dll 3.10.2: -->exception with like operator as stated in this post
With older sqlite3.dll 3.8.5 all works well.
Static linked version was too new, not outdated.
Offline
Perhaps it is something which changed at Sqlite3 level, and broke our code.
I guess this is a regression introduced by http://www.sqlite.org/src/info/277a5b4027d4c2ca in SQLite3 3.10.0.
Please try http://synopse.info/fossil/info/f1e05f9b88
Offline
I'll test it as soon as my internet connection (Telekom) is available again.
Thanks for your support.
Last edited by danielkuettner (2016-01-27 17:33:22)
Offline
With last fix all works!
Thanks a lot.
Offline