<p>I'm creating a small database application to teach myself the following concepts</p>

<ol>
<li>C# programming</li>
<li>.Net 3.5 framework</li>
<li>WPF</li>
<li>LINQ ORM</li>
</ol>

<p>I want to use Microsoft Access as the database but I can't seem to find any mention of whether its possible to use SQLMetal to generate the ORM code from a Microsoft Access database.</p>

<p>Does anyone know if this is possible?</p>

<p>If not, are there any small database or embedded databases I could use? I think SQL express would be overkill for me at this point.</p>

[{'answer_id': 30014, 'author': 'Galwegian', 'author_id': 3201, 'author_profile': 'https://Stackoverflow.com/users/3201', 'pm_score': 1, 'selected': False, 'text': "<p>I don't think SQL Express would be overkill if you want to learn real-world skills - quite the opposite in fact! That'd be my choice, and whatever I chose, I'd stay clear of Access.</p>\n\n<p>Good luck</p>\n"}, {'answer_id': 30017, 'author': 'JamesSugrue', 'author_id': 1075, 'author_profile': 'https://Stackoverflow.com/users/1075', 'pm_score': 1, 'selected': False, 'text': '<p>AFAIK, Linq to SQL is MSSQL server provider specific. To be honest, SQL Express is pretty lightweight on todays machines.</p>\n\n<p>BTW don\'t confuse LINQ with Linq to SQL. Linq is the underlying technology to provide "query" like support to .NET (amongst other things), where as L2S is effectively a Data Access technology built on top of Linq. Vanilla Linq will work with any ADO.NET provider, which of course Access is one.</p>\n\n<p>Entity Framework will work with any compatible provider also but if SQLExpress is too heavy for you then I wouldn\'t recommend going down this path...</p>\n'}, {'answer_id': 30388, 'author': 'Brad Tutterow', 'author_id': 308, 'author_profile': 'https://Stackoverflow.com/users/308', 'pm_score': 3, 'selected': True, 'text': '<p>For an embedded database, you can use <a href="http://www.microsoft.com/sql/editions/compact/default.mspx" rel="nofollow noreferrer">SQL Server Compact Edition</a>.  Unlike SQL Server Express, it is <em>not</em> compatible with the LINQ to SQL designer, but it is fully compatible with the command-line SQLMetal.  It has a few advantages over SQL Express, like to ability to use embedded or run from a file.  Microsoft has a very handy chart outlining the <a href="http://www.microsoft.com/sql/editions/compact/sscecomparison.mspx" rel="nofollow noreferrer">differences between Express and Compact</a>.</p>\n'}, {'answer_id': 31162, 'author': 'Asif', 'author_id': 87645, 'author_profile': 'https://Stackoverflow.com/users/87645', 'pm_score': 0, 'selected': False, 'text': "<p>Thanks for all the responses. I never expected to get an answer this quick. For my test application I think SQL Server Compact Edition would be the way to go. I'm basically creating a money managment app similar to Microsoft Money and although it is an exercise to learn skills, I would eventually want to use it to manage my finances (provided its not too crap!) </p>\n\n<p>This why I thought a fully blown database would be overkill.</p>\n"}]
['https://Stackoverflow.com/questions/30004', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/87645/']