TSQLite3Connection and sloTransactions lazarus / 16-Databases ---------------------------------------------------------------------- fpcoder · 2014-02-18 02:44 The sloDesignTransactions and sloTransactions options for TSQLite3Connection are not much documented. What are they used for? ---------------------------------------------------------------------- LacaK · 2014-02-18 10:30 Looking into code, they are not used at all. (I do not know for what purpose they was introduced) ---------------------------------------------------------------------- fpcoder · 2014-02-20 04:22 Alright, I was just curious. ---------------------------------------------------------------------- mse · 2014-02-20 05:39 TSQLite3Connection is originally a MSEgui component. In MSEgui tsqlite3connection has: Code: [Select]function tsqlite3connection.cantransaction: boolean; begin  result:= (slo_transactions in foptions) and     ((slo_designtransactions in foptions) or not (csdesigning in componentstate)); end; which is used to determine if implicit transactions are replaced by real transactions. It is default off because SQlite3 holds a file lock while reading a resultset which often leads to deadlocks if a resultset is not completely loaded with tmsesqlquery.packetrecords <> -1. ---------------------------------------------------------------------- fpcoder · 2014-02-20 06:51 Does this mean that one app can write to the SQLite database even if another app with for example a DBGrid is connected to and showing data? By adjusting packetrecords so all data is loaded? Quote from: mse on February 20, 2014, 06:39:24 am..SQlite3 holds a file lock while reading a resultset which often leads to deadlocks if a resultset is not completely loaded with tmsesqlquery.packetrecords <> -1. ---------------------------------------------------------------------- mse · 2014-02-20 06:57 Quote from: kapibara on February 20, 2014, 07:51:05 amDoes this mean that one app can write to the SQLite database even if another app with for example a DBGrid is connected to and showing data? By adjusting packetrecords so all data is loaded? With MSEgui components yes, I don't know how FCL handles this.