У меня есть этот пакетный файл, который выводит список всех таблиц в файл. Я ищу команду, которая будет вводить этот список и генерировать целый список операторов отбрасывания, чтобы удалить все таблицы с?
:: droptables.bat
set SQLVER=100
if NOT EXIST "%PROGRAMFILES%\Microsoft SQL Server\100\Tools\BINN\osql.exe" (
@echo MS SQL Server 2008 not found.
set SQLVER=90
if NOT EXIST "%PROGRAMFILES%\Microsoft SQL Server\90\Tools\BINN\osql.exe" (
@echo MS SQL Server 2005 not found.
set SQLVER=80
if NOT EXIST "%PROGRAMFILES%\Microsoft SQL Server\80\Tools\BINN\osql.exe" (
@echo MS SQL Server is not yet installed.
pause
exit
)
)
)
@echo Your SQL Server version is %SQLVER% (100=2008,90=2005, and 80=2000)
if exist "%PROGRAMFILES%\Microsoft SQL Server\%SQLVER%\Tools\BINN\osql.exe" (
"%PROGRAMFILES%\Microsoft SQL Server\%SQLVER%\Tools\BINN\osql" -E
-d "%PROJECT%PD_FSDB_ECitation" -h-1 -Q "select name from sysobjects where
type='U' order by name;" -o tableList.txt
Приведенный выше запрос необходимо изменить, чтобы создать список операторов отбрасывания, а не только имена таблиц. Файл tableList.sql представляет собой простой список операторов отбрасывания таблиц.
После генерации queryList.sql я хочу запустить его так:
osql -E -h-1 -i C:\MyFolder\queryList.txt
Я знаю, что есть способ создать список операторов SQL из оператора SQL, но я не помню, как это сделать.