manishraj,

you will need to add then remove a datatable for each loop through the main recordset. Use a GUID or Key for the table name, as the old data may not be destroyed on remove of the table form the dataset. you are only allowed one dataadapter open per connection. keep in mind the connection pooling is enabled with VB.NET, so if you create a new connection with the same connection string, you are actully only getting a pointer to the connection pool.