I've got some batch files that I use to help automate the process of creating and reloading development databases. It makes sense to create and maintain these batch files in Visual Studio (i.e., in a VS Database project). They look pretty simple, like this:
@echo off
echo Setting server and db from defaults.
set SERVERNAME=(LOCAL)
set DB=PLEDGES
echo Creating tables on server %SERVERNAME% and database %DB%
sqlcmd -S %SERVERNAME% -d %DB% -E -i DropAllTables.sql
sqlcmd -S %SERVERNAME% -d %DB% -E -i dbo.UserType.Table.sql
sqlcmd -S %SERVERNAME% -d %DB% -E -i dbo.RegisteredUser.Table.sql
echo Done creating tables.
The problem is that when I run them, this is the output:
C:\>
'' is not recognized as an internal or external command,
operable program or batch file.
Creating tables on server (LOCAL) and database PLEDGES
Done creating tables.
In other words, Visual Studio is somehow invisibly inserting a set of characters that the Windows command processor is interpreting as a command, i.e., "". A Google search returned nothing on this. Has anybody else run into this? Thoughts on a fix?
I've got a workaround (just add a blank line to the beginning of each file, and it'll show the error, but otherwise work fine), but the anal-retentive side of myself gets annoyed each time I run one of these files.