2014-04-01 1 views
0

Я в настоящее время создание базы данных с помощью PowerShell следующим образом:Установите начальный размер роста базы данных с помощью PowerShell

$db = New-Object Microsoft.SqlServer.Management.Smo.Database($server, $database) 
$db.Collation = "..."; 
... 

$db.Create() 

Теперь мой вопрос: как задать начальные размеры для файлов данных и файлов и их соответствующий рост войти размеры?

Я попытался следующие до сих пор:

foreach ($fg in $db.FileGroups) { 
    foreach($f in $fg) { 
     $f.Size = $initialDataFileSizeInKB 
     $f.Growth = $dataFileGrowthInKB 
     $f.GrowthType = [Microsoft.SqlServer.Management.Smo.FileGrowthType]::KB 
    } 
    } 
} 

foreach($lf in $db.LogFiles) { 
    $lf.Size = $initialLogFileSizeInKB 
    $lf.Growth = $logFileGrowthInKB 
    $lf.GrowthType = [Microsoft.SqlServer.Management.Smo.FileGrowthType]::KB 
} 

Однако, это не работает - проблема, кажется, что нет никаких файлов или же файлов журналов. Как установить значения по умолчанию?

+0

Что не так с созданием баз данных с помощью операторов TSQL? – vonPryz

+0

Я не ищу быстрого исправления, я хочу написать чистое решение, используя объекты управления. –

ответ

0

Для Growth и GrowthType изменяйте отдельные файлы.

foreach ($fg in $db.FileGroups) { 
    foreach ($f in $fg.Files) { 
     $f.Growth = $dataFileGrowthInKB 
     $f.GrowthType = 'KB' 
     $f.Alter() 
    } 
}
Я не уверен в изменении начального размера. Вы пытались установить это как часть создания базы данных?

Смежные вопросы