SQL Express is perfect. It has more features than a SQL beginner needs.
SQLCourse is great. You can also look at http://www.w3schools.com/sql/
Microsoft provides some sample databases
Adventure Works Sample Databases: http://msftdbprodsamples.codeplex.com/
Northwind and pubs Sample Databases for SQL Server 2000: http://www.microsoft.com/en-us/download/details.aspx?id=23654
However, that said, I still think that the best use cases are when you come up with a sample application and you design a database to solve that problem. That way, you can frame your database design against your ‘theoretical’ applications requirements. For example, write an application to mimic a student records system. what tables would be needed (users, permissions, roles, students, courses, and so on)… then work various logic into the database layer… listing students, authenticating a user (simplistic username and unencrypted password), and pulling various reports such as average marks for a student across assignments in a subject, determining class position for students in a subject, finding the best performing students, and so on. As you add complexity to your requirements, using a simple but well understood problem domain, you can expand your SQL skills. Challenge yourself to create the tables using SQL scripts, think up scenarios where perhaps new features that require adjustments to the database design are added and so on. Generate dummy data to create thousands of students, and millions of exam/test/assignment results/scores. Query this data and play with indexes to find how you can optimize the performance of queries.
The point is, without a little application, just reading and working through online courses might not give you the actual hands on experience that you want here.