TRichView can be faster, because you can skip formatting (the slowest procedure).
Just call rv.LoadRVFFromStream to load from blob streams.
But you cannot use SearchText function, because it selects the result.
Options:
1) You can write your own procedure to enumerate all items and search text in each text item, see
http://www.trichview.com/help/controls_ ... items.html
2) You can save text as
RVGetTextRange(rv, 0, RVGetTextLength(rv)) and search in this text.
There is one more idea. When you save RVF document, you can create its plain text copy in another field (using RVGetTextRange)). Then you can use some tool allowing full text search in text fields.