title: Delphi: using TClientDataset as an in-memory dataset
body: <p>According to <a href="http://www.scalabium.com/faq/dct0150.htm" rel="noreferrer">this page,</a> it's possible to use <code>TClientDataset</code> as an in-memory dataset, completely independent of any actual databases or files.  It describes how to setup the dataset's table structure and how to load data into it at runtime.  But when I tried to follow its instructions in D2009, step 4 (<code>table.Open</code>) raised an exception.  It said that it didn't have a provider specified.</p>
  
  <p>The entire point of the example on that page is to build a dataset that doesn't need a provider.  Is the page wrong, is it outdated, or am I missing a step somewhere?  And if the page is wrong, what do I need to use instead to create a completely independent in-memory dataset?  I've been using <code>TJvMemoryData</code>, but if possible I'd like to reduce the amount of extra dependencies that my dataset adds into my project.</p>