共用方式為


建立、改變和移除資料表

在 SQL Server 管理物件 (SMO) 中,資料表是由 Table 物件表示。 在 SMO 物件階層中,Table 物件位於 Database 物件之下。

範例

若要使用所提供的任何程式碼範例,您必須選擇可用於建立應用程式的程式設計環境、範本和計語言。 如需詳細資訊,請參閱<在 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 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# 中建立、改變和移除資料表

此程式碼範例所建立的資料表擁有數個具有不同類型和用途的資料行。 此程式碼也提供如何建立識別欄位、如何建立主索引鍵以及如何改變資料表屬性的範例。

{
            //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 中建立、改變和移除資料表

此程式碼範例所建立的資料表擁有數個具有不同類型和用途的資料行。 此程式碼也提供如何建立識別欄位、如何建立主索引鍵以及如何改變資料表屬性的範例。

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

請參閱

參考

Table