Следует помнить, что вам нужно создавать объекты в порядке зависимости. Поэтому вы не можете просто перебирать файлы.
В итоге мы получили пакетный файл, который бы перечислял все объекты в порядке зависимости
На самом деле у нас было 2 пакетных файла, один из которых назывался createDBObject.bat:
:: Parameters Required:
:: %1 UserID
:: %2 Password
:: %3 Server
:: %4 Database
:: %5 file with scripted object
::
echo. >> CreateDBObjectsLog.txt
echo %5 >> CreateDBObjectsLog.txt
osql -U%1 -P%2 -S%3 -i%5 -d%4 -n >> CreateDBObjectsLog.txt
echo * %5
, а затем другой со списком всех объектов БД:
:: Parameters Required:
:: %1 UserID
:: %2 Password
:: %3 Server
:: %4 Database
::
echo object in %4 database on %3 server
echo Please Wait ...
if exist CreateDBObjectsLog.txt del CreateDBObjectsLog.txt
call createDBObject.bat %1, %2, %3, %4, ScriptedTable1
call createDBObject.bat %1, %2, %3, %4, ScriptedTable2
...
call createDBObject.bat %1, %2, %3, %4, ScriptedTableN
call createDBObject.bat %1, %2, %3, %4, ScriptedView1
call createDBObject.bat %1, %2, %3, %4, ScriptedSP1
etc
Теперь мы используем SQL Compare Pro , который автоматизирует все эти задачи
Вы также можете проверить связанный вопрос: Существует ли альтернатива RedGate для «бедняков» для сценариев всей схемы базы данных?