Aracılığıyla paylaş


Veri Depolamak için Dosya Gruplarını ve Dosyaları Kullanma

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiMicrosoft Fabric'de Azure Synapse AnalyticsSQL veritabanı

Veri dosyaları, veritabanı dosyalarını depolamak için kullanılır. Veri dosyaları dosya gruplarına ayrılır. nesnesi Database , bir FileGroups nesneye başvuran bir FileGroupCollection özelliğe sahiptir. Bu koleksiyondaki her FileGroup nesnenin bir Files özelliği vardır. Bu özellik, veritabanına ait tüm veri dosyalarını içeren bir DataFileCollection koleksiyona başvurur. Dosya grubu, bir veritabanı nesnesini depolamak için kullanılan dosyaları birlikte gruplandırmak için esas olarak kullanılır. Veritabanı nesnesini birkaç dosyaya yaymanın nedenlerinden biri, özellikle dosyalar farklı disk sürücülerinde depolanıyorsa performansı artırabilmesidir.

Oluşturulan her veritabanında otomatik olarak "Birincil" adlı bir dosya grubu ve veritabanıyla aynı ada sahip bir veri dosyası bulunur. Koleksiyonlara ek dosyalar ve gruplar eklenebilir.

Examples

Aşağıdaki kod örnekleri için, uygulamanızı oluşturmak için programlama ortamını, programlama şablonunu ve programlama dilini seçmeniz gerekir. Daha fazla bilgi için bkz. Visual Studio .NET'te Visual C# SMO Projesi Oluşturma.

Visual Basic'te Veritabanına Dosya Grupları ve DataFiles Ekleme

Birincil dosya grubu ve veri dosyası, varsayılan özellik değerleriyle otomatik olarak oluşturulur. Kod örneği, kullanabileceğiniz bazı özellik değerlerini belirtir. Aksi takdirde, varsayılan özellik değerleri kullanılır.

'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()

Visual C'de Veritabanına FileGroups ve DataFiles Ekleme#

Birincil dosya grubu ve veri dosyası, varsayılan özellik değerleriyle otomatik olarak oluşturulur. Kod örneği, kullanabileceğiniz bazı özellik değerlerini belirtir. Aksi takdirde, varsayılan özellik değerleri kullanılır.

{  
            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();  
        }  

PowerShell'de Veritabanına FileGroups ve DataFiles Ekleme

Birincil dosya grubu ve veri dosyası, varsayılan özellik değerleriyle otomatik olarak oluşturulur. Kod örneği, kullanabileceğiniz bazı özellik değerlerini belirtir. Aksi takdirde, varsayılan özellik değerleri kullanılır.

# 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()  

Visual Basic'te Günlük Dosyası Oluşturma, Değiştirme ve Kaldırma

Kod örneği bir LogFile nesne oluşturur, özelliklerden birini değiştirir ve veritabanından kaldırır.

'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()

Visual C'de Günlük Dosyası Oluşturma, Değiştirme ve Kaldırma#

Kod örneği bir LogFile nesne oluşturur, özelliklerden birini değiştirir ve veritabanından kaldırır.

//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();  
  

PowerShell'de Günlük Dosyası Oluşturma, Değiştirme ve Kaldırma

Kod örneği bir LogFile nesne oluşturur, özelliklerden birini değiştirir ve veritabanından kaldırır.

#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()  
  

Ayrıca Bkz.

FileGroup
Veritabanı Dosyaları ve Dosya Grupları