Delen via


Bestandsgroepen en bestanden gebruiken om gegevens op te slaan

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-database in Microsoft Fabric Preview

Gegevensbestanden worden gebruikt voor het opslaan van databasebestanden. De gegevensbestanden worden onderverdeeld in bestandsgroepen. Het Database object heeft een FileGroups eigenschap die verwijst naar een FileGroupCollection object. Elk FileGroup object in die verzameling heeft een Files eigenschap. Deze eigenschap verwijst naar een DataFileCollection verzameling die alle gegevensbestanden bevat die deel uitmaken van de database. Een bestandsgroep wordt voornamelijk gebruikt om bestanden te groeperen die worden gebruikt om een databaseobject op te slaan. Een van de redenen voor het verspreiden van een databaseobject over verschillende bestanden is dat het de prestaties kan verbeteren, met name als de bestanden op verschillende schijfstations worden opgeslagen.

Elke database die automatisch wordt gemaakt, heeft een bestandsgroep met de naam Primair en een gegevensbestand met dezelfde naam als de database. Extra bestanden en groepen kunnen worden toegevoegd aan de verzamelingen.

Examples

Voor de volgende codevoorbeelden moet u de programmeeromgeving, de programmeersjabloon en de programmeertaal selecteren om uw toepassing te maken. Zie Een Visual C# SMO-project maken in Visual Studio .NETvoor meer informatie.

FileGroups en Gegevensbestanden toevoegen aan een database in Visual Basic

De primaire bestandsgroep en het gegevensbestand worden automatisch gemaakt met standaardeigenschapswaarden. In het codevoorbeeld worden enkele eigenschapswaarden opgegeven die u kunt gebruiken. Anders worden de standaardeigenschapswaarden gebruikt.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2022 database.
Dim db As Database
db = srv.Databases("AdventureWorks2022")
'Define a FileGroup object called SECONDARY on the database.
Dim fg1 As 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.
Dim df1 As 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()

FileGroups en Gegevensbestanden toevoegen aan een database in Visual C#

De primaire bestandsgroep en het gegevensbestand worden automatisch gemaakt met standaardeigenschapswaarden. In het codevoorbeeld worden enkele eigenschapswaarden opgegeven die u kunt gebruiken. Anders worden de standaardeigenschapswaarden gebruikt.

{  
            Server srv = new Server();  
            //Reference the AdventureWorks2022 database.   
            Database db = default(Database);  
            db = srv.Databases["AdventureWorks2022"];  
            //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();  
        }  

FileGroups en DataFiles toevoegen aan een database in PowerShell

De primaire bestandsgroep en het gegevensbestand worden automatisch gemaakt met standaardeigenschapswaarden. In het codevoorbeeld worden enkele eigenschapswaarden opgegeven die u kunt gebruiken. Anders worden de standaardeigenschapswaarden gebruikt.

# Set the path context to the local, default instance of SQL Server.  
CD \sql\localhost\default\Databases\  
  
#And the database object corresponding to AdventureWorks2022.  
$db = get-item AdventureWorks2022  
  
#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()  

Een logboekbestand maken, wijzigen en verwijderen in Visual Basic

In het codevoorbeeld wordt een LogFile object gemaakt, een van de eigenschappen gewijzigd en vervolgens uit de database verwijderd.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2022 database.
Dim db As Database
db = srv.Databases("AdventureWorks2022")
'Define a LogFile object and set the database, name, and file name properties in the constructor.
Dim lf1 As LogFile
lf1 = New LogFile(db, "logfile1", "c:\Program Files\Microsoft SQL Server\MSSQL.1\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()

Een logboekbestand maken, wijzigen en verwijderen in Visual C#

In het codevoorbeeld wordt een LogFile object gemaakt, een van de eigenschappen gewijzigd en vervolgens uit de database verwijderd.

//Connect to the local, default instance of SQL Server.   
            Server srv = new Server();  
            //Reference the AdventureWorks2022 database.   
            Database db = default(Database);  
            db = srv.Databases["AdventureWorks2022"];  
            //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();  
  

Een logboekbestand maken, wijzigen en verwijderen in PowerShell

In het codevoorbeeld wordt een LogFile object gemaakt, een van de eigenschappen gewijzigd en vervolgens uit de database verwijderd.

#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 AdventureWorks2022  
$db = get-item AdventureWorks2022  
  
#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()  
  

See Also

FileGroup
databasebestanden en bestandsgroepen