0
我有這樣一組T-SQL語句如下:T-SQL:BACKUP CERTIFICATE - 使用與T-SQL語句的變量
DECLARE @somefilepath as nvarchar = 'c:\somedir\somefile.ext';
DECLARE @anotherfilepath as nvarchar = 'c:\somedir\somefile2.ext';
DECLARE @somepassword as nvarchar = 'password';
BACKUP CERTIFICATE MyCertificate TO FILE = @somefilepath
WITH PRIVATE KEY (FILE = @anotherfilepath,
ENCRYPTION BY PASSWORD = @somepassword);
當我執行 '解析',以測試報表
,我得到:「@somefilepath」附近的語法不正確。看起來變量不能用於這種類型的語句。有人能幫助我理解這是否屬實?
有沒有辦法讓這個備份與變量一起工作?
我有一個更大的腳本,我希望用戶能夠輕鬆地在一個位置更改路徑和密碼,而不必搜索需要手動更改的位置的文件。
你可以使用'QUOTENAME(@somefilepath,'''')' – 2012-07-20 18:31:51
啊,是的,謝謝@Remus,我忘了你可以給'quotename'提供一個字符。 – ErikE 2012-07-20 19:00:06
@ErikE謝謝!這工作完美。我會記住你指定char數據類型的長度。這個建議的原因是什麼?理解爲什麼會幫助我記住這樣做。 – 2012-07-25 18:44:58