Extension of SQL capturing $\mathsf{P}$
As for your main question, I recommend this short survey by Martin Grohe.




  Are the queries that are needed in practice usually simple enough that there is no need for a stronger language?


I'd say this holds most of the time, given the fair amount of extensions added to common query languages (transitive closure, arithmetic operators, counting, etc.). This comes from the point of view of somebody who has done some work as a freelance developer of relatively simple web sites and other applications, so I'm not sure about the real uses of SQL in bigger industries/larger databases.

In the rare cases a more powerful language might be needed, my guess is that software developers deal with them by using the language in which they write the application, not the queries (like C++ or java).