Table.Alter Method

Updates any Table object property changes on the instance of SQL Server. 

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

Syntax

'Declaration
Public Sub Alter
'Usage
Dim instance As Table

instance.Alter()
public void Alter()
public:
virtual void Alter() sealed
abstract Alter : unit -> unit  
override Alter : unit -> unit
public final function Alter()

Implements

IAlterable.Alter()

Remarks

The Alter method updates any changes that have been made to the Table object's properties since the Table object was created or since the last Alter statement. The modifications are combined and sent to the instance of SQL Server in a single network trip to the instance of SQL Server.

Examples

The following code example shows how to create a new table, and then update it by using the Alter method.

C#

Server srv = new Server("(local)");
Database db = srv.Databases["AdventureWorks2012"];

Table tb = new Table(db, "Test Table");
Column col1 = new Column(tb, "Name", DataType.NChar(50));
Column col2 = new Column(tb, "ID", DataType.Int);

tb.Columns.Add(col1); 
tb.Columns.Add(col2); 
tb.Create();

Column col3 = new Column(tb, "Date", DataType.DateTime);
tb.Columns.Add(col3);
tb.Alter();

Powershell

#Connect to the local server and get the AdventureWorks2012 database
$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2012")

#Create the Table
$tb = new-object Microsoft.SqlServer.Management.Smo.Table($db, "Test Table")
$col1 = new-object Microsoft.SqlServer.Management.Smo.Column($tb, "Name", [Microsoft.SqlServer.Management.Smo.DataType]::NChar(50))
$col2 = new-object Microsoft.SqlServer.Management.Smo.Column($tb, "ID", [Microsoft.SqlServer.Management.Smo.DataType]::Int)
$tb.Columns.Add($col1)
$tb.Columns.Add($col2)
$tb.Create()

#Add a new column and update the table
$col3 = new-object Microsoft.SqlServer.Management.Smo.Column($tb, "Date", [Microsoft.SqlServer.Management.Smo.DataType]::DateTime)
$tb.Columns.Add($col3)
$tb.Alter()

See Also

Reference

Table Class

Microsoft.SqlServer.Management.Smo Namespace

Other Resources

Tables

CREATE TABLE (Transact-SQL)