Recordset: Classificar registros (ODBC)
Este tópico se aplica a classes MFC ODBC.
Este tópico explica como classificar registros.Você pode especificar uma ou mais colunas no qual basear a classificação e você pode especificar a ordem crescente ou decrescente (ASC ou DESC; ASCé o padrão) para cada coluna de especificado.Por exemplo, se você especificar duas colunas, os registros são classificados primeiro na primeira coluna nomeada e, na segunda coluna nomeada.Um SQL ORDER BY cláusula define uma classificação.Quando a estrutura acrescenta o ORDER BY consulta cláusula para SQL do conjunto de registros, os controles de cláusula a seleção do pedido.
Você deve estabelecer a ordem de classificação do conjunto de registros após você construir o objeto, mas antes de chamar seu Abrir função de membro (ou antes de chamar o Requery função de membro de um conjunto de registros existente objeto cuja Abrir função de membro tiver sido chamada anteriormente).
Para especificar uma ordem de classificação para um objeto recordset
Construir um novo objeto recordset (ou se preparar para chamar Requery para um já existente).
Definir o valor do objeto m_strSort membro de dados.
A classificação é uma cadeia terminada com nulo.Ele contém o conteúdo do ORDER BY cláusula mas não a palavra-chave ORDER BY.Por exemplo, use:
recordset.m_strSort = "LastName DESC, FirstName DESC";
não
recordset.m_strSort = "ORDER BY LastName DESC, FirstName DESC";
Defina outras opções que necessárias, como um filtro, o modo de bloqueio ou parâmetros.
Chamar Abrir para o novo objeto (ou Requery para um objeto existente).
Os registros selecionados são ordenados conforme especificado.Por exemplo, para classificar um conjunto de registros do aluno em ordem decrescente por sobrenome e nome, faça o seguinte:
// Construct the recordset
CStudentSet rsStudent( NULL );
// Set the sort
rsStudent.m_strSort = "LastName DESC, FirstName DESC";
// Run the query with the sort in place
rsStudent.Open( );
O conjunto de registros contém todos os registros do aluno, classificados em ordem decrescente (Z a) pelo sobrenome, em seguida, pelo primeiro nome.
Observação |
---|
Se você optar por substituir a seqüência de caracteres do conjunto de registros padrão SQL, passando a sua própria seqüência SQL para Abrir, não defina uma classificação se sua seqüência personalizada tem um ORDER BY cláusula. |