0
以下、私のデータベースをバックアップするバッチファイルを実行しようとしています。私はsp_executesqlを使ってこれを実行する方が安全です。私が抱えている問題は、sqlcmdを使用して以下のコードから予期せぬ引数が渡されていることがわかりません。私はそれに関する情報を検索しようとしましたが、関連するものを見つけることができませんでした。このバックアップは、ローカルのsqlexpressインスタンス用です。バッチスクリプト/ sp_executesql
SET spToExec =exec sp_BackupDatabases @databaseName='MY_DB', @backupType='F',@backupLocation='C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\Backup\'
ECHO spToExec value is: %spToExec %
sqlcmd -E -S CompName\SQLEXPRESS -Q EXEC sp_executesql spToExec
てみ 'dqlcmd -E -S COMPNAME \ SQLEXPRESS -Q EXECをクエリを囲むとしなければならなかったsp_executesqlを%spToExec%' –
あなたはsqlcmdを意味しました - E -S CompName \ SQLEXPRESS -Q EXEC sp_executesql%spToExec%?私はそれを試しましたが、残念ながら私には同じ問題があります。 – Manu
'sqlcmd -E -S CompName \ SQLEXPRESS -Q EXEC sp_executesql%spToExec%' SET spToExec = exec ... 'として定義されている場合は、 'spToExec'変数名の後続スペースをメモしてください。 – JosefZ