Export (0) Print
Expand All

Table Class

The Table object represents a SQL Server table.

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

[PhysicalFacetAttribute]
[EvaluationModeAttribute(AutomatedPolicyEvaluationMode.CheckOnSchedule)]
public sealed class Table : TableViewBase, 
	ISfcSupportsDesignMode, IColumnPermission, IObjectPermission, ICreatable, IAlterable, 
	IDroppable, IRenamable, ITableOptions, IDmfFacet

The Table type exposes the following members.

  NameDescription
Public methodTable()Initializes a new instance of the Table class.
Public methodTable(Database, String)Initializes a new instance of the Table class on the specified database and that has the specified name.
Public methodTable(Database, String, String)Initializes a new instance of the Table class on the specified database and that has the specified name and schema.
Top

  NameDescription
Public propertyAnsiNullsStatusGets the Boolean property value that specifies whether ISO NULL handling is enabled on the table.
Public propertyChangeTrackingEnabledGets or sets a value that indicates whether change tracking is enabled for the table.
Public propertyChecksRepresents a collection of Check objects. Each Check object represents a check constraint defined on the table.
Public propertyColumnsGets a column collection. (Inherited from TableViewTableTypeBase.)
Public propertyCreateDateGets the date and time when the table was created.
Public propertyDataSpaceUsedGets the storage space used by the rows of the referenced table in kilobytes.
Public propertyDateLastModifiedGets the date and time when the table was last modified.
Public propertyDistributionNameGets or sets the name of the distribution scheme defined by the federation.
Public propertyEventsGets the events that are associated with the table.
Public propertyExtendedPropertiesGets an extended property collection. (Inherited from TableViewTableTypeBase.)
Public propertyFakeSystemTableGets the Boolean value that specifies whether the table references a system table.
Public propertyFederationColumnIDGets the ID of the column for the federation key.
Public propertyFederationColumnNameGets or sets the name of the column for the federation key.
Public propertyFileGroupGets or sets the filegroup in which the table is stored.
Public propertyFileStreamFileGroupGets or sets the filegroup for FILESTREAM data.
Public propertyFileStreamPartitionSchemeGets or sets the partition scheme for FILESTREAM data.
Public propertyFileTableDirectoryNameGets or sets the directory name of the FileTable.
Public propertyFileTableNameColumnCollationGets the column collation of the FileTable name.
Public propertyFileTableNamespaceEnabledGets or sets a value that indicates whether the FileTable namespace is enabled.
Public propertyForeignKeysRepresents a collection of ForeignKey objects. Each ForeignKey object represents a foreign key defined on the table.
Public propertyFullTextIndexGets the full text index on the table or view. (Inherited from TableViewBase.)
Public propertyHasAfterTriggerGets the Boolean property value that specifies whether the table has any after triggers.
Public propertyHasClusteredIndexGets the Boolean property value that specifies whether the table has a clustered index.
Public propertyHasCompressedPartitionsGets a value indicating whether the table uses compressed partitions
Public propertyHasDeleteTriggerGets the Boolean property value that specifies whether the table has a delete trigger.
Public propertyHasIndexGets the Boolean property value that specifies whether the table has at least one index.
Public propertyHasInsertTriggerGets the Boolean property value that specifies whether the table has an insert trigger.
Public propertyHasInsteadOfTriggerGets the Boolean property value that specifies whether the table has any instead of triggers.
Public propertyHasUpdateTriggerGets the Boolean property value that specifies whether the table has an update trigger.
Public propertyIDGets the ID value that uniquely identifies the table.
Public propertyIndexesGets the specified index of collection in the table. (Overrides TableViewTableTypeBase.Indexes.)
Public propertyIndexSpaceUsedGets the space used by the index, in KB.
Public propertyIsFileTableGets a value that indicates whether a table is FileTable.
Public propertyIsIndexableGets the Boolean property value that specifies whether an index can be placed on the table.
Public propertyIsPartitionedGets the Boolean property value that specifies whether the table is partitioned.
Public propertyIsSchemaOwnedGets the Boolean property value that specifies whether the table schema is owned.
Public propertyIsSystemObjectGets the Boolean property value that specifies whether the table is a system object.
Public propertyIsVarDecimalStorageFormatEnabledGets or sets a value that indicates whether var decimal storage is enabled.
Public propertyLockEscalationGets or sets the type of lock escalation that is used on the table.
Public propertyMaximumDegreeOfParallelismGets or sets the maximum number of processors to use in a parallel plan execution that includes the table.
Public propertyNameGets or sets a String value that specifies the name of the view table type. (Inherited from TableViewTableTypeBase.)
Public propertyOnlineHeapOperationGets or sets the Boolean value that determines whether the table supports online heap or index operations.
Public propertyOwnerGets or sets the owner of the table.
Public propertyParentGets the Database object that is the parent of the Table object.
Public propertyPartitionSchemeGets or sets the name of the partition scheme that is configured for the table.
Public propertyPartitionSchemeParametersRepresents a collection of PartitionSchemeParameter objects. Each PartitionSchemeParameter object represents a partition scheme parameter defined on the table.
Public propertyPhysicalPartitionsGets the physical partitions in which the table data is stored.
Public propertyPropertiesGets a collection of Property objects that represent the object properties. (Inherited from SqlSmoObject.)
Public propertyQuotedIdentifierStatusGets or sets a Boolean property value that specifies whether identifiers delimited by double quotation marks are Transact-SQL reserved keywords or contain characters not usually allowed by the Transact-SQL syntax rules.
Public propertyReplicatedGets the Boolean property that specifies whether the table is replicated.
Public propertyRowCountGets the number of rows in the table.
Public propertyRowCountAsDoubleGets the number of rows in the table as a floating point value.
Public propertySchemaGets or sets a String value that specifies the name of the schema that contains the view table type. (Inherited from TableViewTableTypeBase.)
Public propertyStateGets the state of the referenced object. (Inherited from SmoObjectBase.)
Public propertyStatisticsRepresents a collection of Statistic objects. Each Statistic object represents a statistic counter that is defined on the table or view. (Inherited from TableViewBase.)
Public propertyTextFileGroupGets or sets the filegroup that is used to maintain long, variable-length data stored in the table.
Public propertyTrackColumnsUpdatedEnabledGets or sets a value that indicates whether the Database Engine track columns update is enabled.
Public propertyTriggersRepresents a collection of Trigger objects. Each Trigger object represents a trigger that is defined on the table or view. (Inherited from TableViewBase.)
Public propertyUrnGets the Uniform Resource Name (URN) address value that uniquely identifies the object. (Inherited from SqlSmoObject.)
Public propertyUserDataGets or sets user-defined data associated with the referenced object. (Inherited from SmoObjectBase.)
Top

  NameDescription
Public methodAlterUpdates any Table object property changes on the instance of SQL Server. 
Public methodAlterWithNoCheckUpdates any Table object property changes on the instance of SQL Server without checking the property values first. 
Public methodChangeSchemaChanges the schema on the referenced table.
Public methodCheckIdentityValueVerifies the integrity of all identity columns in the referenced table.
Public methodCheckTableTests the integrity of database pages for the table and indexes defined on the table.
Public methodCheckTableDataOnlyTests the integrity of database pages for the table data defined on the table.
Public methodCreateCreates a table on the instance of SQL Server as defined by the Table object.
Public methodDeny(ObjectPermissionSet, String)Denies the specified set of permissions for the specified grantee on the table.
Public methodDeny(ObjectPermissionSet, String[])Denies the specified set of permissions for the specified grantees on the table.
Public methodDeny(ObjectPermissionSet, String, Boolean)Denies the specified set of permissions for the specified grantee and other users to whom the grantee granted the specified set of permissions on the table.
Public methodDeny(ObjectPermissionSet, String, String[])Denies the specified set of permissions to the grantee on the specified columns on the table.
Public methodDeny(ObjectPermissionSet, String[], Boolean)Denies the specified permission for the specified grantees on the table.
Public methodDeny(ObjectPermissionSet, String[], String[])Denies the specified set of permissions for the grantees on the specified columns on the table.
Public methodDeny(ObjectPermissionSet, String, String[], Boolean)Denies the specified set of permissions for the specified grantee and other users to whom the grantee granted the specified set of permissions on the specified columns on the table.
Public methodDeny(ObjectPermissionSet, String[], String[], Boolean)Denies the specified set of permissions for the specified grantees and other users to whom the grantee granted the specified set of permissions on the specified columns on the table.
Public methodDisableAllIndexesDisables all the indexes that are on the table.
Public methodDiscoverDiscovers a list of type Object. (Inherited from SqlSmoObject.)
Public methodDropRemoves the table from the database.
Public methodEnableAllIndexesEnables all indexes.
Public methodEnumColumnPermissions()Enumerates a list of column permissions for the table.
Public methodEnumColumnPermissions(String)Enumerates a list of column permissions for a specified grantee on the table.
Public methodEnumColumnPermissions(ObjectPermissionSet)Enumerates a list of column permissions for a specified permission on the table.
Public methodEnumColumnPermissions(String, ObjectPermissionSet)Enumerates a list of column permissions for a specified grantee and a specified permission on the table.
Public methodEnumForeignKeysEnumerates a list of primary keys in which the table is referenced as a foreign key.
Public methodEnumFragmentation()Enumerates information about fragments of data that are stored in a table or view. (Inherited from TableViewBase.)
Public methodEnumFragmentation(FragmentationOption)Enumerates information about fragments of data that are stored in a table or view with the option to specify how detailed the results should be. (Inherited from TableViewBase.)
Public methodEnumFragmentation(FragmentationOption, Int32)Enumerates information about fragments of data that are stored in a table or view on a specified partition, and with the option to specify how detailed the results should be. (Inherited from TableViewBase.)
Public methodEnumLastStatisticsUpdates()Enumerates a list of information about the most recent statistics updates.
Public methodEnumLastStatisticsUpdates(String)Enumerates a list of information about the most recent statistics updates for the specified statistic counter.
Public methodEnumObjectPermissions()Enumerates a list of object permissions for the table.
Public methodEnumObjectPermissions(String)Enumerates a list of object permissions for a specified grantee on the table.
Public methodEnumObjectPermissions(ObjectPermissionSet)Enumerates a list of object permissions for a specified permission on the table.
Public methodEnumObjectPermissions(String, ObjectPermissionSet)Enumerates a list of object permissions for a specified grantee and a specified permission on the table.
Public methodEnumScript()Returns an IEnumerable<string> object that has the script for the passed objects
Public methodEnumScript(ScriptingOptions)Returns an IEnumerable<string> object that has the script for the passed objects.
Public methodEquals (Inherited from Object.)
Protected methodFormatSqlVariantFormats an object as SqlVariant type. (Inherited from SqlSmoObject.)
Protected methodGetContextDBGets the context database that is associated with this object. (Inherited from SqlSmoObject.)
Protected methodGetDBNameGets the database name that is associated with the object. (Inherited from SqlSmoObject.)
Public methodGetHashCode (Inherited from Object.)
Protected methodGetPropValueGets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Protected methodGetPropValueOptionalGets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Protected methodGetPropValueOptionalAllowNullGets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Protected methodGetServerObjectGets the server of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Public methodGetType (Inherited from Object.)
Public methodGrant(ObjectPermissionSet, String)Grants the specified set of permissions to the specified grantee on the table.
Public methodGrant(ObjectPermissionSet, String[])Grants the specified set of permissions to the specified grantees on the table.
Public methodGrant(ObjectPermissionSet, String, Boolean)Grants access to the specified permission and the ability to grant access to other uses for the specified grantee on the table.
Public methodGrant(ObjectPermissionSet, String, String[])Grants access to the specified permission on the specified columns for the specified grantee on the specified columns on the table.
Public methodGrant(ObjectPermissionSet, String[], Boolean)Grants access to the specified permission and the ability to grant access to other uses for the specified grantees on the table.
Public methodGrant(ObjectPermissionSet, String[], String[])Grants the specified set of permissions to the grantees to the specified columns on the table.
Public methodGrant(ObjectPermissionSet, String, Boolean, String)Grants the specified set of permissions to the grantee and the ability to grant the set of permissions to other users on the table under an assumed role.
Public methodGrant(ObjectPermissionSet, String, String[], Boolean)Grants the specified permission to the grantee and the ability to grant the specified set of permissions to other users on the specified columns on the table.
Public methodGrant(ObjectPermissionSet, String[], Boolean, String)Grants the specified set of permissions to the grantees and the ability to grant the set of permissions to other users on the table under an assumed role.
Public methodGrant(ObjectPermissionSet, String[], String[], Boolean)Grants the specified set of permissions to the grantees and the ability to grant the set of permissions to other users on the specified columns on the table.
Public methodGrant(ObjectPermissionSet, String, String[], Boolean, String)Grants the specified set of permissions to the grantee and the ability to grant the set of permissions to other users on the specified columns on the table under an assumed role.
Public methodGrant(ObjectPermissionSet, String[], String[], Boolean, String)Grants the specified set of permissions to the grantees and the ability to grant the set of permissions to other users on the specified columns on the table under an assumed role.
Public methodInitialize()Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.)
Public methodInitialize(Boolean)Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.)
Protected methodIsObjectInitializedVerifies whether the object has been initialized. (Inherited from SqlSmoObject.)
Protected methodIsObjectInSpaceVerifies whether the object is isolated or connected to the instance of SQL Server. (Inherited from SqlSmoObject.)
Public methodRebuild()Rebuilds the table.
Public methodRebuild(Int32)Rebuilds the specified table partition.
Public methodRebuildIndexesRebuilds the indexes on the table.
Public methodRecalculateSpaceUsageRecalculates the space that is used on the table.
Public methodReCompileReferencesRecompiles any view or trigger that depends on the base SMO object. (Inherited from TableViewBase.)
Public methodRefreshRefreshes the View object or Table object properties. (Inherited from TableViewBase.)
Public methodRenameRenames the table.
Public methodRevoke(ObjectPermissionSet, String)Revokes a previously granted set of permissions from a grantee on the table.
Public methodRevoke(ObjectPermissionSet, String[])Revokes a previously granted set of permissions from a list of grantees on the table.
Public methodRevoke(ObjectPermissionSet, String, String[])Revokes a previously granted set of permissions from a grantee on the specified columns on the table.
Public methodRevoke(ObjectPermissionSet, String[], String[])Revokes a previously granted set of permissions from a list of grantees on the specified columns on the table.
Public methodRevoke(ObjectPermissionSet, String, Boolean, Boolean)Revokes a previously granted set of permissions from a grantee on the table and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users.
Public methodRevoke(ObjectPermissionSet, String[], Boolean, Boolean)Revokes a previously granted set of permissions from grantees on the table and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users.
Public methodRevoke(ObjectPermissionSet, String, Boolean, Boolean, String)Revokes a previously granted set of permissions from a grantee from the table and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String, String[], Boolean, Boolean)Revokes a previously granted set of permissions from grantees on the specified columns on the table and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String[], Boolean, Boolean, String)Revokes a previously granted set of permissions from grantees on the table and any other users to whom the grantees have granted access. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String[], String[], Boolean, Boolean)Revokes a previously granted set of permissions from grantees on the specified columns on the table and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String, String[], Boolean, Boolean, String)Revokes a previously granted set of permissions from a grantee on the specified columns on the table and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String[], String[], Boolean, Boolean, String)Revokes a previously granted set of permissions from the grantees for the specified columns on the table and any other users to whom the grantee has granted access. The grantee is also given the ability to revoke other users' access under an assumed role.
Public methodScript()Generates a Transact-SQL script that can be used to re-create the database object. (Inherited from TableViewTableTypeBase.)
Public methodScript(ScriptingOptions)Generates a Transact-SQL script that can be used to re-create the database object with the specified scripting options. (Inherited from TableViewTableTypeBase.)
Protected methodSetParentImplSets the parent of the SqlSmoObject to the newParent parameter. (Inherited from SqlSmoObject.)
Public methodSwitchPartition(Table)Switches the partition of the table to the specified target table.
Public methodSwitchPartition(Int32, Table)Switches the specified partition of the table to the specified target table specified (assuming the target table is not partitioned).
Public methodSwitchPartition(Table, Int32)Switches the table to the partition with the specified partition number of the specified target table.
Public methodSwitchPartition(Int32, Table, Int32)Switches the specified source partition of the table to the specified target of the specified target table.
Public methodToStringReturns a String that represents the referenced object. (Inherited from SqlSmoObject.)
Public methodTruncateDataTruncates the data in the table.
Public methodUpdateStatistics()Updates statistics for the table or view. (Inherited from TableViewBase.)
Public methodUpdateStatistics(StatisticsTarget, StatisticsScanType)Updates the statistics for the table or view with the option to specify the target and the type of scan performed. (Inherited from TableViewBase.)
Public methodUpdateStatistics(StatisticsTarget, StatisticsScanType, Int32)Updates the statistics for the table or view with the option to specify the target, the type of scan performed, and the sample size. (Inherited from TableViewBase.)
Public methodUpdateStatistics(StatisticsTarget, StatisticsScanType, Int32, Boolean)Updates the statistics for the table or view with the option to specify the target, the type of scan performed, the sample size, and whether to recompute the statistics. (Inherited from TableViewBase.)
Public methodValidateValidates the state of an object. (Inherited from SmoObjectBase.)
Top

  NameDescription
Public eventPropertyChangedRepresents the event that occurs when a property is changed. (Inherited from SqlSmoObject.)
Public eventPropertyMetadataChangedRepresents the event that occurs when property metadata changes. (Inherited from SqlSmoObject.)
Top

  NameDescription
Explicit interface implemetationPrivate methodIAlienObject.DiscoverDiscovers any dependencies. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetDomainRootReturns the root of the domain. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetParentGets the parent of this object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetPropertyTypeGets the type of the specified property. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetPropertyValueGets the value of the specified property. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetUrnGets the Unified Resource Name (URN) of the object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.ResolveGets the instance that contains the information about the object from the Unified Resource Name (URN) of the object. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.SetObjectStateSets the object state to the specified SfcObjectState value. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.SetPropertyValueSets the property value. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodISfcPropertyProvider.GetPropertySetGets the interface reference to the set of properties of this object. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate propertyISfcSupportsDesignMode.IsDesignModeIdentified for informational purposes only. Not supported. Future compatibility is not guaranteed. Gets a Boolean value that indicates whether the object supports design mode.
Top

To get Table object properties, users can be a member of the public fixed server role.

To set Table object properties, users must have ALTER permission on the table.

To create a table, users must have CREATE TABLE permission on the parent database and ALTER permission in the schema.

To drop a table, users must have CONTROL permission on the table, or be a member of the db_ddladmin or db_owner fixed database roles.

To grant, deny, or revoke permission on the table to other users, users must have CONTROL permission on the table.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Community Additions

ADD
Show:
© 2014 Microsoft