2009-08-20 39 views
0

它工作得很好,如果我寫這樣的查詢:如何將參數值設置爲MB或KB(在MS SQL 2008中)?

ALTER DATABASE [test] MODIFY FILE ( 
    NAME = N'test_log', SIZE = 3456KB, 
    MAXSIZE = 6789999KB, FILEGROWTH = 2345KB) 

但它是一個問題,如果我嘗試使用參數:

ALTER DATABASE [@DbName] MODIFY FILE ( 
    NAME = N'@LogFileName', SIZE = @InitialSize, 
    MAXSIZE = @MaxSize , FILEGROWTH = @FileGrowth) 

我知道,MS SQL 2008有自動轉換,但是當我使用參數發生錯誤。 所以,我的問題是:從哪種類型必須聲明的參數,我用它來設定大小MB(@InitialSize,@MaxSize,@FileGrowth)?

回答

1

N'@LogFileName'不正確,它表示值爲@LogFileName而不是變量的字符串。

的默認大小是MB,但我不認爲你可以在變量傳遞。很少有DDL語句接受變量。當他們這樣做的說明文件variable_literal,就像在CREATE/ALTER ASSEMBLY的情況下,接受了assembly bits參數變量。

相關問題