Share via


Usando coleções

Uma coleção é uma lista de objetos que foram construídos na mesma classe de objeto e que compartilham o mesmo objeto pai. O objeto de coleção sempre contém o nome do tipo de objeto com o sufixo Collection. Por exemplo, para acessar as colunas em uma tabela especificada, use o tipo de objeto ColumnCollection. Ele contém todos os objetos Column que pertencem ao mesmo objeto Table.

A instrução Microsoft Visual BasicFor...Each ou a instrução Microsoft Visual C#foreach pode ser usada para iterar através de cada membro da coleção.

Exemplos

Para usar qualquer exemplo de código fornecido, será necessário escolher o ambiente de programação, o modelo de programação e a linguagem de programação para criar o aplicativo. Para mais informações, consulte "Como criar um projeto Visual Basic SMO no Visual Studio .NET" ou "Como criar um projeto Visual C# SMO no Visual Studio .NET" nos Manuais Online do SQL Server.

Referenciando um objeto usando uma coleção no Visual Basic

Este exemplo de código mostra como definir uma propriedade de coluna usando as propriedades Columns, Tables e Databases. Essas propriedades representam coleções, que podem ser usadas para identificar um determinado objeto quando usadas com um parâmetro que especifica o nome do objeto. O nome e o esquema são necessários para a propriedade do objeto de coleção Tables.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Modify a property using the Databases, Tables, and Columns collections to reference a column.
srv.Databases("AdventureWorks2008R2").Tables("Person", "Person").Columns("ModifiedDate").Nullable = True
'Call the Alter method to make the change on the instance of SQL Server.
srv.Databases("AdventureWorks2008R2").Tables("Person", "Person").Columns("ModifiedDate").Alter()

Referenciando um objeto usando uma coleção no Visual C#

Este exemplo de código mostra como definir uma propriedade de coluna usando as propriedades Columns, Tables e Databases. Essas propriedades representam coleções, que podem ser usadas para identificar um determinado objeto quando usadas com um parâmetro que especifica o nome do objeto. São obrigatórios o nome e o esquema da propriedade do objeto de coleção Tables.

{ 
//Connect to the local, default instance of SQL Server. 
Server srv; 
srv = new Server(); 
//Modify a property using the Databases, Tables, and Columns collections to reference a column. 
srv.Databases("AdventureWorks2008R2").Tables("Person", "Person").Columns("LastName").Nullable = true; 
//Call the Alter method to make the change on the instance of SQL Server. 
srv.Databases("AdventureWorks2008R2").Tables("Person", "Person").Columns("LastName").Alter(); 
}

Iterando através dos membros de uma coleção no Visual Basic

Este exemplo de código itera através da propriedade de coleção Databases e exibe todas as conexões do banco de dados com a instância do SQL Server.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
Dim count As Integer
Dim total As Integer
'Iterate through the databases and call the GetActiveDBConnectionCount method.
Dim db As Database
For Each db In srv.Databases
    count = srv.GetActiveDBConnectionCount(db.Name)
    total = total + count
    'Display the number of connections for each database.
    Console.WriteLine(count & " connections on " & db.Name)
Next
'Display the total number of connections on the instance of SQL Server.
Console.WriteLine("Total connections =" & total)

Iterando através dos membros de uma coleção no Visual C#

Este exemplo de código itera através da propriedade de coleção Databases e exibe todas as conexões do banco de dados com a instância do SQL Server.

//Connect to the local, default instance of SQL Server. 
{ 
Server srv = default(Server); 
srv = new Server(); 
int count = 0; 
int total = 0; 
//Iterate through the databases and call the GetActiveDBConnectionCount method. 
Database db = default(Database); 
foreach ( db in srv.Databases) { 
  count = srv.GetActiveDBConnectionCount(db.Name); 
  total = total + count; 
  //Display the number of connections for each database. 
  Console.WriteLine(count + " connections on " + db.Name); 
} 
//Display the total number of connections on the instance of SQL Server. 
Console.WriteLine("Total connections =" + total); 
}