How modify SQLite3 "Maximum Depth Of An Expression Tree" in direct mode?

Discussion of open issues, suggestions and bugs regarding LiteDAC (SQLite Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
unidac5src
Posts: 8
Joined: Wed 22 Apr 2015 07:33

How modify SQLite3 "Maximum Depth Of An Expression Tree" in direct mode?

Post by unidac5src » Thu 07 May 2015 00:55

I use Unidac for SQLite3 db connection. For encryption, I use direct mode.
But my query is too long. So SQLite3 Expression depth is overflow.
I found solution. It's to modify SQLITE_LIMIT_EXPR_DEPTH. It's possible at run-time.

I want to modify the property using Unidac direct mode.
Please know me how to do.

Reference
http://www.sqlite.org/limits.html
http://www.sqlite.org/c3ref/limit.html

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: How modify SQLite3 "Maximum Depth Of An Expression Tree" in direct mode?

Post by AlexP » Wed 13 May 2015 09:34

We have increased the value of SQLITE_LIMIT_EXPR_DEPTH to 10000 in Direct mode. When establishing connection, this value will be reset to 1000 by default. After connecting, you will be able to increase the value to 10000 using the LiteConnection.Limit method. This method may be used to set other supported values: https://www.sqlite.org/c3ref/limit.html .

Post Reply