Moving Databases between Instances of different Versions of SQL Server I found out SQL Server Developer Edition is now free.

I would like to use my older databases from SQL Server Express 2016 to a new instance of SQL Server Developer 2017. 

I want all the data objects: indexes, triggers, etc. to be moved together with the data files. 

I am trying to figure out the ways in which I can do this. I am pretty sure these would work between instances of the same version, but I am not sure if it would work if moving between different versions of SQL Server:


Backup Old and Restore to New
Script Old and run the script on New
Detach Old and reattach it on New


Are these 3 workable? Are there any other ways?

The instances are on the same machine, and I have not yet installed SQL Server developer edition. 

Migration does not need to be immediate, but at most within a week or so.
The best way will be to use backup-restore - using start-dbamigration .. This will take care of migrating entire instance including all databases, logins, jobs, etc.

Make sure you use -BackupRestore switch with appropriate network location 

e.g. 


  Start-DbaMigration -Source sql2016 -Destination sql2017 -BackupRestore -NetworkShare \nas\sql\migration