Мой предпочтительный подход для преобразования структуры базы данных из одного механизма базы данных в другой заключается в создании простого приложения для этой цели, особенно если оно должно быть динамическим (структура меняется со временем) и повторяться. Это возможно в вашей ситуации?
В частности, напишите приложение / скрипт для обхода структуры исходной базы данных (в данном случае MySQL) и сгенерируйте эквивалентный DDL для целевой базы данных (в данном случае SQL Server). Затем DDL может быть либо сохранен как сценарий для последующего выполнения, либо он может быть выполнен в режиме реального времени, если у вас есть возможность подключения к обеим базам данных одновременно.
За много лет я делал это много раз. По сути, это упражнение в генерации кода в общем случае, поэтому оно может выиграть от использования механизма шаблонов (StringTemplate).
Я нашел это полезным для случаев, когда я обновлял базу данных (Oracle 6-7), а также для переключения продуктов (например, Access to SQL Server).
Вы можете также рассмотреть возможность использования ANSI SQL вместо этого, что будет работать для большинства баз данных, за исключением случаев, когда вы используете пользовательские функции базы данных (которые должны быть сведены к минимуму).
С наилучшими пожеланиями.
РЕДАКТИРОВАТЬ: Я бы НЕ рекомендовал пытаться преобразовать реальные файлы сценариев с помощью какого-либо анализа текста и переписать. Я обнаружил, что он подвержен ошибкам, чрезвычайно сложен, отнимает много времени и, в конечном счете, проваливается с определенными видами необходимых преобразований. Пусть движки баз данных сделают эту работу за вас, как я предложил выше.