I have found by error, the right way to hook the components:
SQLite3Connection1.DatabaseName:='%path%/filename.db';
SQLite3Connection1.Transaction:=SQLTransaction1;
SQLQuery1.Database:=SQLite3Connection1;
// DO NOT SET SQLQuery1.DataSource //
SQLQuery1.Transaction:=SQLTransaction1;
DataSource1.DataSet:=SQLQuery1;
SQLQuery1.SQL.Text (via component inspector) = 'SELECT * FROM IMP ORDER BY KEY';
DBEdit1..DBEdit9 associate to fields.
I open all this up, Append new record via NAVBar ... when I save, the fields that have Database Rules all complain they are REQUIRED.
I saw another post where the developer mentioned OnAfterInsert - set SQLQuery1.FieldByName('KEY').Required:=FALSE; etc.
I do my edit, looks like all works, open DB on another machine - empty.
So, I checkbox SQLQuery1.Options = [sqoKeepOpenOnCommit,sqoAutoApplyUpdates,sqoAutoCommit,sqoRefreshUsingSelect] now when I edit and post, I get "Database is Locked".
Ozz