Если вы боитесь потерять входные данные, используя базу данных, вы можете попробовать использовать TThreadStringList. Я полагаю, что ваше программное обеспечение получает данные от нескольких устройств одновременно (и в этом случае вы должны создать многопоточный носок, чтобы убедиться, что вы получите все данные), если вы вместо этого получаете данные с одного устройства, вы должны убедиться, что протокол tcp поддерживает своего рода систему подтверждения, чтобы избежать потери данных или, по крайней мере, для сообщения в журнале данных, которые ваше приложение не смогло получить полностью.
В любом случае, TThreadStringList - это простая оболочка для TStringList. Это позволяет получить доступ к списку строк из разных потоков без каких-либо конфликтов. Я не могу проверить это, но для вас должно быть легко и быстро попробовать.
Ссылка: TThreadStringList