Em https://www.sqlite.org/whentouse.html tem um checklist para ver se a tua aplicação pode usar sqlite ou deve usar um RDBMS de verdade :D
Alguns detlhes da FAQ. https://www.sqlite.org/faq.html que deves prestar atenção:
- (3) SQLite lets me insert a string into a database column of type integer! : Pode levar a resultados incorretos.
- (5) Can multiple applications or multiple instances of the same application access a single database file at the same time? : Muita concorrência complica.
- (11) How do I add, delete or rename columns from an existing table in SQLite? : Mais se for na mão. Aguns programa como o https://sqlitebrowser.org/ facilitam asoperaçõespara ti.
- (18) The default configuration of SQLite only supports case-insensitive comparisons of ASCII characters: Pode ser um problemão se tiveres alguma coluna com acentuação
- (19) INSERT is really slow - I can only do few dozen INSERTs per second. : Se for um usuário não deve ter problemas. Cem usuários inserindo dados simultaneamente pode complicar.
Ao meu ver, a maior vantagem do sqlite é o seu tamanho reduzido. Um banco de dados robusto que pode ser utilizado sem instalação é o https://firebirdsql.org/ (também pode ser instalado como C/S). A desvantagem é o tamanho.
Usar ele para teste e desenvolvimento necessita de alguma atenção. Se o produto final for com outro RDBMS é necessário verificar as diferenças e incompatibilidades para não ter mais trabalho do que desenvolver com o BD utilizado no produto final.