sqlmd 経由で SQL Server 2008 に接続できない

sqlmd 経由で SQL Server 2008 に接続できない

SQL 2008 Express のデータベースのバックアップをスケジュールしたいと考えています。このジョブに適したストアド プロシージャを見つけました。そのための bat ファイルを作成し、実行したいのですが、次の sqlcmd ステートメントが失敗します。

sqlcmd -S '.\SQLEXPRESS' -Q "EXEC sp_BackupDatabases @databaseName='BonusPoint', @backupLocation='C:\DBBackup\', @backupType='F'"

ユーザー名とパスワードも試してみました:

sqlcmd -S '.\SQLEXPRESS' -U 'sa' -P '*******' -Q "EXEC sp_BackupDatabases @databaseName='BonusPoint', @backupLocation='C:\DBBackup\', @backupType='F'"

しかし、次のエラーが発生します:

http://tinypic.com/view.php?pic=29za3gn&s=5

データベースは同じマシンにあり、SSMS 経由でデータベースに接続できます。

編集:

最後に、次のステートメントを使用して sqlcmd 経由で DB に正常に接続しました。

sqlcmd -Snp:\\.\pipe\MSSQL$SQLEXPRESS\sql\query

答え1

元の試みの問題は、SQLCMD が単一引用符を好まない -S '.\SQLEXPRESS' を使用したことです。-S ".\SQLEXPRESS" のように二重引用符を使用すれば、おそらく機能したでしょう。

関連情報