Condividi tramite


Oggetto SqlDataRecord

Si applica a:SQL Server

In .NET Common Language Runtime (CLR), l'oggetto SqlDataRecord rappresenta una singola riga di dati, insieme ai relativi metadati.

Le stored procedure gestite possono inviare ai set di risultati del client che non provengono da un SqlDataReader. La classe SqlDataRecord, insieme ai metodi SendResultsStart, SendResultsRowe SendResultsEnd dell'oggetto SqlPipe, consente alle stored procedure di inviare set di risultati personalizzati al client.

Per altre informazioni, vedere Microsoft.SqlServer.Server.SqlDataRecord.

Esempi

Nell'esempio seguente viene creato un nuovo record relativo a un dipendente, che viene successivamente restituito al chiamante.

[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);

}