Поделиться через


Использование файловых групп и файлов для хранения данных

Файлы данных используются для хранения файлов базы данных. Файлы данных разделены на группы файлов. Объект Database имеет FileGroups свойство, которое ссылается на FileGroupCollection объект. Каждый FileGroup объект в этой коллекции имеет Files свойство. Это свойство относится к DataFileCollection коллекции, содержащей все файлы данных, принадлежащие базе данных. Группа файлов в основном используется для группировки файлов, которые используются для хранения объекта базы данных. Одна из причин распространения объекта базы данных по нескольким файлам заключается в том, что он может повысить производительность, особенно если файлы хранятся на разных дисках.

Каждая база данных, созданная автоматически, имеет группу файлов с именем Primary и файл данных с таким же именем, что и база данных. Дополнительные файлы и группы можно добавить в коллекции.

Примеры

Для следующих примеров кода необходимо выбрать среду программирования, шаблон программирования и язык программирования для создания приложения. Дополнительные сведения см. в статье "Создание проекта SMO Visual Basic в Visual Studio .NET " и создание проекта SMO Visual C# в Visual Studio .NET.

Добавление файловых групп и файлов данных в базу данных в Visual Basic

Основная группа файлов и файл данных создаются автоматически со значениями свойств по умолчанию. В примере кода указываются некоторые значения свойств, которые можно использовать. В противном случае используются значения свойств по умолчанию.

Добавление файловых групп и файлов данных в базу данных в Visual C#

Основная группа файлов и файл данных создаются автоматически со значениями свойств по умолчанию. В примере кода указываются некоторые значения свойств, которые можно использовать. В противном случае используются значения свойств по умолчанию.

{  
            Server srv = new Server();  
            //Reference the AdventureWorks2012 database.   
            Database db = default(Database);  
            db = srv.Databases["AdventureWorks2012"];  
            //Define a FileGroup object called SECONDARY on the database.   
            FileGroup fg1 = default(FileGroup);  
            fg1 = new FileGroup(db, "SECONDARY");  
            //Call the Create method to create the file group on the instance of SQL Server.   
            fg1.Create();  
            //Define a DataFile object on the file group and set the FileName property.   
            DataFile df1 = default(DataFile);  
            df1 = new DataFile(fg1, "datafile1");  
            df1.FileName = "c:\\Program Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Data\\datafile2.ndf";  
            //Call the Create method to create the data file on the instance of SQL Server.   
            df1.Create();  
        }  

Добавление файловых групп и файлов данных в базу данных в PowerShell

Основная группа файлов и файл данных создаются автоматически со значениями свойств по умолчанию. В примере кода указываются некоторые значения свойств, которые можно использовать. В противном случае используются значения свойств по умолчанию.

# Set the path context to the local, default instance of SQL Server.  
CD \sql\localhost\default\Databases\  
  
#And the database object corresponding to AdventureWorks2012.  
$db = get-item AdventureWorks2012  
  
#Create a new filegroup  
$fg1 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Filegroup -argumentlist $db, "SECONDARY"  
$fg1.Create()  
  
#Define a DataFile object on the file group and set the FileName property.   
$df1 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.DataFile -argumentlist $fg1, "datafile1"  
  
#Make sure to have a directory created to hold the designated data file  
$df1.FileName = "c:\\TestData\\datafile2.ndf"  
  
#Call the Create method to create the data file on the instance of SQL Server.   
$df1.Create()  

Создание, изменение и удаление файла журнала в Visual Basic

Пример кода создает LogFile объект, изменяет одно из свойств, а затем удаляет его из базы данных.

Создание, изменение и удаление файла журнала в Visual C#

Пример кода создает LogFile объект, изменяет одно из свойств, а затем удаляет его из базы данных.

//Connect to the local, default instance of SQL Server.   
            Server srv = new Server();  
            //Reference the AdventureWorks2012 database.   
            Database db = default(Database);  
            db = srv.Databases["AdventureWorks2012"];  
            //Define a LogFile object and set the database, name, and file name properties in the constructor.   
            LogFile lf1 = default(LogFile);  
            lf1 = new LogFile(db, "logfile1", "c:\\Program Files\\Microsoft SQL Server\\MSSQL.10_50.MSSQLSERVER\\MSSQL\\Data\\logfile1.ldf");  
            //Set the file growth to 6%.   
            lf1.GrowthType = FileGrowthType.Percent;  
            lf1.Growth = 6;  
            //Run the Create method to create the log file on the instance of SQL Server.   
            lf1.Create();  
            //Alter the growth percentage.
            lf1.Growth = 7;  
            lf1.Alter();  
            //Remove the log file.
            lf1.Drop();

Создание, изменение и удаление файла журнала в PowerShell

Пример кода создает LogFile объект, изменяет одно из свойств, а затем удаляет его из базы данных.

#Load the assembly containing the enums used in this example  
[reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.SqlEnum")  
  
# Set the path context to the local, default instance of SQL Server.  
CD \sql\localhost\default\Databases\  
  
#And the database object corresponding to AdventureWorks2012  
$db = get-item AdventureWorks2012  
  
#Create a filegroup  
$fg1 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Filegroup -argumentlist $db, "Secondary"  
  
#Call the Create method to create the file group on the instance of SQL Server.   
$fg1.Create()  
  
#Define a LogFile object on the file group and set the FileName property.   
$lf1 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.LogFile -argumentlist $db, "LogFile2"  
  
#Set a location for it - make sure the directory exists  
$lf1.FileName = "logfile1", "c:\\Program Files\\Microsoft SQL Server\\MSSQL.10_50.MSSQLSERVER\\MSSQL\\Data\\logfile1.ldf"  
  
#Set file growth to 6%  
$lf1.GrowthType = [Microsoft.SqlServer.Management.Smo.FileGrowthType]::Percent  
$lf1.Growth = 6.0  
  
#Call the Create method to create the data file on the instance of SQL Server.   
$lf1.Create()  
  
#Alter a value and drop the log file  
$lf1.Growth = 7.0  
$lf1.Alter()  
$lf1.Drop()

См. также

FileGroup
Файлы и файловые группы базы данных