2 things:
Obvious question, but have you checked whether the new host offers temporary domains ? ie.
http://mysite.co.uk.sometemporarydomain.com, because that's one way of testing a whole site 'live' before you change the DNS settings.
Secondly, if you're going to try to move a database check whether you have online access through a generic administrator like mylittleadmin on the old and the new host. If you have, you should be able to export/download tables online from the existing one onto your PC/network and then upload to the new one yourself.
If not then see if you can just download the database and then get the new host to upload it. Problem might be if you bought a 'package' which other folks also share, there might not be any way of retrieving your database, as you might not actually have a dedicated one of your own.
If you can access the database with your own code, you could write something to retrieve the data.
Difficult to comment exactly really, I think you need to ask the old and new hosts - it depends very much on them. If they're half decent, they should do a dump for you, but there will be a bit of (possibly unpleasantly tedious) work to upload it to a new host.