错误消息是什么意思?

时间:2017-01-03 07:17:09

标签: sql-server

我创建(从Internet复制)一个批处理文件,用于备份我的数据库'WIS':

echo off
cls
echo -- BACKUP DATABASE --
set /p DATABASENAME=WIS

:: filename format Name-Date (eg MyDatabase-2009.5.19.bak)
set DATESTAMP=%DATE:~-4%.%DATE:~7,2%.%DATE:~4,2%
set BACKUPFILENAME=%CD%\%DATABASENAME%-%DATESTAMP%.bak
set SERVERNAME=WIN2016
echo.

sqlcmd -E -S %SERVERNAME% -d master -Q "BACKUP DATABASE [%DATABASENAME%] TO DISK = N'%BACKUPFILENAME%' WITH INIT , NOUNLOAD , NAME = N'%DATABASENAME% backup', NOSKIP , STATS = 10, NOFORMAT"
echo.
pause

但是,当我运行批处理文件时,我收到以下错误消息。

  

Msg 1038,Level 15,State 4,Server WIN2016,Line 1
  对象或列名称缺失或为空。对于SELECT INTO语句,请验证每列是否有名称。对于其他语句,请查找空别名。不允许将别名定义为""[]。将别名更改为有效名称。

有人能告诉我这段代码有问题吗?

1 个答案:

答案 0 :(得分:0)

更改

set /p DATABASENAME=WIS

set DATABASENAME=WIS

这可能会有所帮助。