нашел один вариант решения, не совсем то что нужно, но результат удовлетворяет.
что я сделал: убрал вход по логину и паролю. теперь на форме логина и пароля имеется combobox, textbox, button
при появлении формы логина идет подгрузка в combobox всех User'ов (ForeignKey=User; FieldName=UserName;)
textbox (бывший ввод пароль) он остался для муляжа
при нажатии на button ---> закрываем форму логина ---> передаем текст.значения combobox'а в основную форму -> показываем основную форму
С помощью такого варианта решения можно работать в одной базе данных sqlite нескольким пользователям, при этом визуально якобы разные пользователи (выбираем с combobox'a).
Решение пока конечно так себе, но для моей задачи это меня устраивает. Буду пока работать над таким вариантом, есть мысли по улучшению...
procedure frmLogin_bLogin_OnClick (Sender: TObject; Action: string);
begin
frmLogin.Hide; // close login form
Form1.Caption := 'Учет (пользователь: ' + frmLogin.cbLogin.Text+')';
Form1.Show;
end;
procedure frmLogin_OnShow (Sender: TObject; Action: string);
begin
frmLogin.mniFile.Visible := False;
frmLogin.mniOptions.Visible := False;
frmLogin.mniAbout.Visible := False;
if SQLExecute('SELECT count(id) FROM User') = '0' then
begin
SQLExecute('INSERT INTO User (UserName, password, privAdmin) VALUES ("admin", NULL, 1);');
UpdateDatabase('User');
end;
end;