I've looked, but perhaps I'm missing something but the TSQLConnection seems to be insisting I set a transaction, even for an initial read.
In the FormCreate() function, I have code like this (it's incomplete, but was setup for a quick test to ensure basic functionality):
Db1Query.Sql.Add('Select IDNo, FirstName, FamilyName from Table1 order by IDNo');
try
begin
Db1Query.Open;
while not (Db1Query.EOF) do
Db1Query.next; // just itterate through for now
end;
except
on E: Exception do
begin
MessageDlg('Database Error!', 'An error occured while attempting to access the database. Error message received was: ' + E.Message, mtError, [mbClose], '');
halt(1);
end;
DB1query is a TSQLQuery with the host, password, username and database name assigned in the component properties, outside of any function while the SQL text is defined earlier than this block.
But as soon as I try running the program, I get an error about Transactions not being set. This is a test database with a whole TWO records. Now why would I use a transaction. And why would the system insist on that? Frankly, I don't think I'd ever use a transaction because this program is not meant for multi-user simultaneous use. So how do I get around this? I can put TSQLTransaction on there, but why? Why include a component that I'll NEVER use except for assigning it to a property of some other component? The Attached image shows the dialog.