次の方法で共有


ファイルとファイル グループを使用したデータの格納

データベース ファイルの格納には、データ ファイルを使用します。データ ファイルは、ファイル グループに細分化されます。Database オブジェクトには、FileGroupCollection オブジェクトを参照する FileGroups プロパティがあります。このコレクション内の各 FileGroup オブジェクトには、Files プロパティがあります。このプロパティは、データベースに属するすべてのデータ ファイルが含まれる、DataFileCollection コレクションを参照します。ファイル グループは主に、データベース オブジェクトの格納に使用されるファイルをグループ化するために使用します。データベース オブジェクトを複数のファイルに分散する理由の 1 つは、これによってパフォーマンスを向上させることができるからです。パフォーマンスの向上は、ファイルを複数のディスク ドライブに格納されていれば特に期待できます。

自動的に作成される各データベースには、"Primary" という名前のファイル グループと、データベースと同じ名前を持つデータ ファイルがあります。コレクションにはファイルおよびグループを追加することもできます。

次のコード例では、アプリケーションを作成するプログラミング環境、プログラミング テンプレート、およびプログラミング言語を選択する必要があります。詳細については、「Visual Studio .NET で Visual Basic SMO プロジェクトを作成する方法」および「Visual Studio .NET で Visual C# SMO プロジェクトを作成する方法」を参照してください。

Visual Basic でファイル グループおよびデータ ファイルをデータベースに追加する

プライマリ ファイル グループおよびデータ ファイルは、既定のプロパティ値を使用して自動的に作成されます。コード例では、使用できるいくつかのプロパティ値を指定しています。指定しなかった場合は、既定のプロパティ値が使用されます。

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks database.
Dim db As Database
db = srv.Databases("AdventureWorks")
'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# でファイル グループおよびデータ ファイルをデータベースに追加する

プライマリ ファイル グループおよびデータ ファイルは、既定のプロパティ値を使用して自動的に作成されます。コード例では、使用できるいくつかのプロパティ値を指定しています。指定しなかった場合は、既定のプロパティ値が使用されます。

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

Visual Basic でのログ ファイルの作成、変更、および削除

コード例では、LogFile オブジェクトを作成し、プロパティの 1 つを変更して、このオブジェクトをデータベースから削除しています。

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks database.
Dim db As Database
db = srv.Databases("AdventureWorks")
'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# でのログ ファイルの作成、変更、および削除

コード例では、LogFile オブジェクトを作成し、プロパティの 1 つを変更して、このオブジェクトをデータベースから削除しています。

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