SQL := 'SELECT text FROM vdb WHERE text MATCH :search ORDER BY rank';
FDQuery2.SQL.Text := SQL
FDQuery2.ParamByName('search').AsString := '^'+sEdit1.Text+'*';
FDQuery2.Open;
SELECT text FROM vdb WHERE text MATCH '"Привет корова."' || '*' ORDER BY rank;
SELECT text FROM vdb WHERE text MATCH 'Привет корова.' || '*' ORDER BY rank;
Обратите внимание, что в FTS5 нельзя просто подставлять в MATCH любую строку. Если она будет содержать специальные символы, например, ‘?’ или ‘*’, то это будет считаться синтаксической ошибкой и приведет к SQLiteException. Чтобы избежать этого, заключаем строку в двойные кавычки, а если строка сама содержит двойные кавычки, дублируем их:
"\"${pattern.replace("\"","\"\"")}\""