Hi Petr
It does beg the question why Moodle continues to support MSSQL if there are so many issues with it.
Is there a guide out there for moving Moodle install from MSSQL to MySQL?
It is very easy to say that XYZ supports ABC, but in the end it depends on what developers know, test and use and what the biggest installations install on their servers. All core and contrib developers would need to understand all those little and big problems we have with Oracle and MSSQL, so far that does not seem to be the case and I doubt it is going to change any time soon - for now if you do not want problems I would recommend PostgreSQL.
Migration is possible using the /admin/tool/dbtransfer/ tool. There are still some pending issues there (such as missing log action rewriting), hopefully it will be improved in the near future.
http://connect.microsoft.com/VisualStudio/feedback/details/612369/misleading-error-message-in-sqlexception-when-using-entity-framework
Hmm, it seems that MSSQL can not begin+commit transactions when there is open recordset, that would be an ugly restriction. It might be easier to migrate to PostgreSQL or MySQL because if that is true problems like this are going to pop up randomly all over the place.
I suppose that a work around could be wrap our recordsets with transactions but that is going to break places that are not compatible with transactions and it could result in changes of behaviour too.
Alternatively we could read all recordset data into memory in sqlsrv drivers and close the recordsets immediately, but that could easily cause out of memory problems in some areas.
I am sorry for the bad news.