テーブルの作成、変更、および削除
SQL Server 管理オブジェクト (SMO) では、テーブルは Table オブジェクトによって表されます。 SMO オブジェクト階層では、Table オブジェクトは Database オブジェクトの下位にあります。
例
提供されているコード例を使用するには、プログラミング環境、テンプレート、およびアプリケーションを作成するプログラミング言語を選択する必要があります。 詳細については、「Visual Studio .NET での Visual Basic SMO プロジェクトの作成」または「Visual Studio .NET での Visual C# SMO プロジェクトの作成」を参照してください。
Visual Basic でのテーブルの作成、変更、および削除
このコード例では、型や目的の異なるさまざまな列があるテーブルを作成します。 また、ID フィールドの作成方法、主キーの作成方法、およびテーブル プロパティの変更方法の例を示します。
'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2012 2008R2 database.
Dim db As Database
db = srv.Databases("AdventureWorks2012")
'Define a Table object variable by supplying the parent database and table name in the constructor.
Dim tb As Table
tb = New Table(db, "Test_Table")
'Add various columns to the table.
Dim col1 As Column
col1 = New Column(tb, "Name", DataType.NChar(50))
col1.Collation = "Latin1_General_CI_AS"
col1.Nullable = True
tb.Columns.Add(col1)
Dim col2 As Column
col2 = New Column(tb, "ID", DataType.Int)
col2.Identity = True
col2.IdentitySeed = 1
col2.IdentityIncrement = 1
tb.Columns.Add(col2)
Dim col3 As Column
col3 = New Column(tb, "Value", DataType.Real)
tb.Columns.Add(col3)
Dim col4 As Column
col4 = New Column(tb, "Date", DataType.DateTime)
col4.Nullable = False
tb.Columns.Add(col4)
'Create the table on the instance of SQL Server.
tb.Create()
'Add another column.
Dim col5 As Column
col5 = New Column(tb, "ExpiryDate", DataType.DateTime)
col5.Nullable = False
tb.Columns.Add(col5)
'Run the Alter method to make the change on the instance of SQL Server.
tb.Alter()
'Remove the table from the database.
tb.Drop()
Visual C# でのテーブルの作成、変更、および削除
このコード例では、型や目的の異なるさまざまな列があるテーブルを作成します。 また、ID フィールドの作成方法、主キーの作成方法、およびテーブル プロパティの変更方法の例を示します。
{
//Connect to the local, default instance of SQL Server.
Server srv;
srv = new Server();
//Reference the AdventureWorks2012 database.
Database db;
db = srv.Databases["AdventureWorks2012"];
//Define a Table object variable by supplying the parent database and table name in the constructor.
Table tb;
tb = new Table(db, "Test_Table");
//Add various columns to the table.
Column col1;
col1 = new Column(tb, "Name", DataType.NChar(50));
col1.Collation = "Latin1_General_CI_AS";
col1.Nullable = true;
tb.Columns.Add(col1);
Column col2;
col2 = new Column(tb, "ID", DataType.Int);
col2.Identity = true;
col2.IdentitySeed = 1;
col2.IdentityIncrement = 1;
tb.Columns.Add(col2);
Column col3;
col3 = new Column(tb, "Value", DataType.Real);
tb.Columns.Add(col3);
Column col4;
col4 = new Column(tb, "Date", DataType.DateTime);
col4.Nullable = false;
tb.Columns.Add(col4);
//Create the table on the instance of SQL Server.
tb.Create();
//Add another column.
Column col5;
col5 = new Column(tb, "ExpiryDate", DataType.DateTime);
col5.Nullable = false;
tb.Columns.Add(col5);
//Run the Alter method to make the change on the instance of SQL Server.
tb.Alter();
//Remove the table from the database.
tb.Drop();
}
PowerShell でのテーブルの作成、変更、および削除
このコード例では、型や目的の異なるさまざまな列があるテーブルを作成します。 また、ID フィールドの作成方法、主キーの作成方法、およびテーブル プロパティの変更方法の例を示します。
#Load the assembly containing the objects used in this example
[reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Types")
# 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 SMO Table
$tb = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Table -argumentlist $db, "Test_Table"
#Add various columns to the table.
$Type = [Microsoft.SqlServer.Management.SMO.DataType]::NChar(50)
$col1 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Column -argumentlist $tb,"Name", $Type
$col1.Collation = "Latin1_General_CI_AS"
$col1.Nullable = $true
$tb.Columns.Add($col1)
$Type = [Microsoft.SqlServer.Management.SMO.DataType]::Int
$col2 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Column -argumentlist $tb,"ID", $Type
$col2.Identity = $true
$col2.IdentitySeed = 1
$col2.IdentityIncrement = 1
$tb.Columns.Add($col2)
$Type = [Microsoft.SqlServer.Management.SMO.DataType]::Real
$col3 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Column -argumentlist $tb,"Value", $Type
$tb.Columns.Add($col3)
$Type = [Microsoft.SqlServer.Management.SMO.DataType]::DateTime
$col4 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Column -argumentlist $tb,"Date", $Type
$col4.Nullable = $false
$tb.Columns.Add($col4)
#Create the table
$tb.Create()
$Type = [Microsoft.SqlServer.Management.SMO.DataType]::DateTime
$col5 = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Column -argumentlist $tb,"ExpiryDate", $Type
$col5.Nullable = $false
$tb.Columns.Add($col5)
#Run the Alter method to make the change on the instance of SQL Server.
$tb.Alter()
#Remove the table from the database.
$tb.Drop()