Compartir a través de


Objeto SqlDataRecord

Se aplica a:SQL Server

En Common Language Runtime (CLR) de .NET, el objeto SqlDataRecord representa una sola fila de datos, junto con sus metadatos relacionados.

Los procedimientos almacenados administrados pueden enviarse a los conjuntos de resultados de cliente que no proceden de un SqlDataReader. La clase SqlDataRecord, junto con los métodos SendResultsStart, SendResultsRowy SendResultsEnd del objeto SqlPipe, permite que los procedimientos almacenados envíen conjuntos de resultados personalizados al cliente.

Para obtener más información, vea Microsoft.SqlServer.Server.SqlDataRecord.

Ejemplos

En el ejemplo siguiente se crea un nuevo registro de empleado y se devuelve al autor de la llamada.

  • de C#
  • de Visual Basic para .NET
[Microsoft.SqlServer.Server.SqlProcedure]
public static void CreateNewRecordProc()
{
    // Variables.
    SqlDataRecord record;

    // Create a new record with the column metadata.  The constructor
    // is able to accept a variable number of parameters.
    record = new SqlDataRecord(new SqlMetaData("EmployeeID", SqlDbType.Int),
                               new SqlMetaData("Surname", SqlDbType.NVarChar, 20),
                               new SqlMetaData("GivenName", SqlDbType.NVarChar, 20),
                               new SqlMetaData("StartDate", SqlDbType.DateTime) );

    // Set the record fields.
    record.SetInt32(0, 0042);
    record.SetString(1, "Funk");
    record.SetString(2, "Don");
    record.SetDateTime(3, new DateTime(2005, 7, 17));

    // Send the record to the calling program.
    SqlContext.Pipe.Send(record);

}