Stateful session beans do not store in a DB (at least not in the way that entity beans do). A stateful session bean is not mapped to a database. The only time a stateful session bean is written to persistent storage is when it is passivated.
A stateful session bean represents a business logic bean that will be assigned to one and only one client. An entity bean represents business data that is stored in a database.
The difference is clearer when talking about the difference between stateless and stateful session beans. Stateless session beans are almost like static classes. They should not store any data unique to a client because the client can not guarantee they will get the same bean on the next request. In fact, the
EJB Server will whip up a batch of stateless session beans and hand them out randomly as requested to fulfill each request. With stateful session beans, a client will get a single bean to work with and as long as they keep the pointer to that bean they will keep getting that same bean across an entire session.