Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server bat文件中的SQLCMD无法再查询网络服务器上的数据库_Sql Server_Batch File_Sqlcmd - Fatal编程技术网

Sql server bat文件中的SQLCMD无法再查询网络服务器上的数据库

Sql server bat文件中的SQLCMD无法再查询网络服务器上的数据库,sql-server,batch-file,sqlcmd,Sql Server,Batch File,Sqlcmd,您好,我正在寻找一些关于在我们的服务器上查找哪些更改的建议 我已经成功地使用用户桌面上的bat文件来查询我们网络服务器上的股票数据库。 我有一些其他的bat文件用于类似的任务,它们突然停止了工作 我们在数据库服务器上安装了MS SQL Server 2012,并使用XP和Win 7台式机。数据库位于SERVER2上,实例名为MSSQL2012 .bat文件如下所示 set /P sn= Enter Serial: %=% sqlcmd -S SERVER2\MSSQL2012 -i C:

您好,我正在寻找一些关于在我们的服务器上查找哪些更改的建议

我已经成功地使用用户桌面上的bat文件来查询我们网络服务器上的股票数据库。 我有一些其他的bat文件用于类似的任务,它们突然停止了工作

我们在数据库服务器上安装了MS SQL Server 2012,并使用XP和Win 7台式机。数据库位于SERVER2上,实例名为MSSQL2012 .bat文件如下所示

    set /P sn= Enter Serial: %=%
sqlcmd -S SERVER2\MSSQL2012 -i C:\SerialCheck\SerialNumber.sql -o C:\SerialCheck\Output.txt -v serial=%sn%
 USE DATABASE

 GO

select tblStock.SerialNumber,tblStock.StockD,tblStock.YearManufacture,tblStock.Price 
FROM tblStock
where SerialNumber like '%$(sn)%' 

GO
SerialNumber.sql如下所示

    set /P sn= Enter Serial: %=%
sqlcmd -S SERVER2\MSSQL2012 -i C:\SerialCheck\SerialNumber.sql -o C:\SerialCheck\Output.txt -v serial=%sn%
 USE DATABASE

 GO

select tblStock.SerialNumber,tblStock.StockD,tblStock.YearManufacture,tblStock.Price 
FROM tblStock
where SerialNumber like '%$(sn)%' 

GO
它工作得很好,然后突然停了下来。我已经在服务器上做了很多检查,以找出发生了什么,但什么也没有得到

如果我在任何桌面上运行我的.bat,什么都不会发生,也不会创建output.txt文件

如果我在实际的SERVER2上运行我的.bat,它可以正常工作,因此问题一定与防火墙/访问相关,但我什么也没有得到

任何人都可以建议

如何生成某种错误文件,以便更好地了解问题所在? 要检查与访问相关的哪些更改 提前谢谢


编辑如果我只是在命令提示符窗口中输入sqlcmd-S SERVER2\MSSQL2012,我会得到一个错误,即sqlcmd不是可识别的命令,我需要安装一些SQL程序吗?它以前在fire中工作过,所以我认为不是吗?

在sqlcmd中尝试使用SQL Server身份验证而不是Windows身份验证。不幸的是,这不会改变任何事情。您对此有进一步的建议吗?