The problem here is not that what you're trying to do is not working. It's that you're trying to do the wrong thing. This code:
vb.net Code:
  1. SQLCreateCommand = "SELECT * INTO NewTable From " & DataTable
Suggests that what you're trying to do is insert all the records from your DataTable into the NewTable table in your database. If that's the case then you don't have to perform any query. How do you usually insert data from a DataTable into a database table? By calling Update on a data adapter with an appropriate InsertCommand; that's how. That is what you do here. For an example, follow the CodeBank link in my signature and check out my thread on Retrieving & Saving Data.

Whether or not it will work as is depends on how you populated the DataTable. If you have added the rows yourself and AcceptChanges has not been called then you're good to go. If AcceptChanges has been called, either explicitly or implicitly by a Fill or Update call on a data adapter then the data is not ready to be inserted. In order that it is, the RowState of each DataRow must be Added. If you have populated the DataTable by calling Fill on a data adapter then you can simply set the AcceptChangesOnFill property of the adapter to False beforehand. Otherwise, you can loop through the Rows collection of the DataTable and call SetAdded on each row.