title: Inserting large amounts of data in to a database, avoiding RBAR
body: <p>So I am writing software that has to insert thousands of records into a Microsoft Access. Currently I am using an RBAR(row by agonising row) approach with JET. I wrote a <a href="https://stackoverflow.com/q/12040607/1606972">question</a> on SO before asking how to speed up the process and was told to use DAO instead of JET as it would be much faster, and to avoid RBAR.</p>
  
  <p>I am now in the situation where I am ready to implement a faster solution however, I have some further questions. Firstly something simple, does anyone know of a good tutorial for DAO syntax in vb.net as I have tried to look for one online but have struggled. Also does anyone know of a library to use instead?</p>
  
  <p>Secondly what is the best way to avoid an RBAR approach to inserting data into a database. I assume that this is using a record set, but I am unsure how to go about implementing one of these, or the SQL query required to insert several rows at once.</p>
  
  <p>Finally I was told before that ms-access was not the best thing to use a it is slow. Does anyone have any suggestions of a different alternative to access? I would need it to be a free commercial license which I know is a stretch. I only use the database as store for the data I don't need any of the user interfacing that access provides. I found a <a href="https://stackoverflow.com/a/29205/1606972">question</a> on SO about this which suggests SQLite, MySQL or FireBird. Does anyone know of the speed of these solutions compared to Access and whether they are still free for commercial use.</p>
  
  <p>So I am basically looking for advice for how to read/write large amounts of data to a database as quickly as possible. Any help or suggestions would be greatly appreciated.</p>