Table.HasIndex Property

Gets the Boolean property value that specifies whether the table has at least one index.

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

Syntax

'Declaration
<SfcPropertyAttribute(SfcPropertyFlags.None Or SfcPropertyFlags.Standalone Or SfcPropertyFlags.SqlAzureDatabase)> _
Public ReadOnly Property HasIndex As Boolean 
    Get
'Usage
Dim instance As Table 
Dim value As Boolean 

value = instance.HasIndex
[SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase)]
public bool HasIndex { get; }
[SfcPropertyAttribute(SfcPropertyFlags::None|SfcPropertyFlags::Standalone|SfcPropertyFlags::SqlAzureDatabase)]
public:
property bool HasIndex {
    bool get ();
}
[<SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase)>]
member HasIndex : bool
function get HasIndex () : boolean

Property Value

Type: System.Boolean
A Boolean value that specifies whether there is at least one index defined on the table.If True, there is an index defined on the table. Otherwise, False (default).

Examples

The following code example shows how to check each table in the AdventureWorks2012 database to see if it has an index.

C#

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

Foreach (Table tb in db.Tables) 
{
   Console.WriteLine("The " + tb.Name + " table has an index:" + tb.HasIndex.ToString());
}

Powershell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2012")

Foreach ($tb in $db.Tables) 
{
   Write-Host "The" $tb.Name "table has an index:" $tb.HasIndex
}

See Also

Reference

Table Class

Microsoft.SqlServer.Management.Smo Namespace

Other Resources

Tables

CREATE TABLE (Transact-SQL)