# Microsoft.SqlServer.Server ``` diff +namespace Microsoft.SqlServer.Server { + public class SqlDataRecord { + public SqlDataRecord(params SqlMetaData[] metaData); + public virtual int FieldCount { get; } + public virtual object this[int ordinal] { get; } + public virtual object this[string name] { get; } + public virtual bool GetBoolean(int ordinal); + public virtual byte GetByte(int ordinal); + public virtual long GetBytes(int ordinal, long fieldOffset, byte[] buffer, int bufferOffset, int length); + public virtual char GetChar(int ordinal); + public virtual long GetChars(int ordinal, long fieldOffset, char[] buffer, int bufferOffset, int length); + public virtual string GetDataTypeName(int ordinal); + public virtual DateTime GetDateTime(int ordinal); + public virtual DateTimeOffset GetDateTimeOffset(int ordinal); + public virtual Decimal GetDecimal(int ordinal); + public virtual double GetDouble(int ordinal); + public virtual Type GetFieldType(int ordinal); + public virtual float GetFloat(int ordinal); + public virtual Guid GetGuid(int ordinal); + public virtual short GetInt16(int ordinal); + public virtual int GetInt32(int ordinal); + public virtual long GetInt64(int ordinal); + public virtual string GetName(int ordinal); + public virtual int GetOrdinal(string name); + public virtual SqlBinary GetSqlBinary(int ordinal); + public virtual SqlBoolean GetSqlBoolean(int ordinal); + public virtual SqlByte GetSqlByte(int ordinal); + public virtual SqlBytes GetSqlBytes(int ordinal); + public virtual SqlChars GetSqlChars(int ordinal); + public virtual SqlDateTime GetSqlDateTime(int ordinal); + public virtual SqlDecimal GetSqlDecimal(int ordinal); + public virtual SqlDouble GetSqlDouble(int ordinal); + public virtual Type GetSqlFieldType(int ordinal); + public virtual SqlGuid GetSqlGuid(int ordinal); + public virtual SqlInt16 GetSqlInt16(int ordinal); + public virtual SqlInt32 GetSqlInt32(int ordinal); + public virtual SqlInt64 GetSqlInt64(int ordinal); + public virtual SqlMetaData GetSqlMetaData(int ordinal); + public virtual SqlMoney GetSqlMoney(int ordinal); + public virtual SqlSingle GetSqlSingle(int ordinal); + public virtual SqlString GetSqlString(int ordinal); + public virtual object GetSqlValue(int ordinal); + public virtual int GetSqlValues(object[] values); + public virtual SqlXml GetSqlXml(int ordinal); + public virtual string GetString(int ordinal); + public virtual TimeSpan GetTimeSpan(int ordinal); + public virtual object GetValue(int ordinal); + public virtual int GetValues(object[] values); + public virtual bool IsDBNull(int ordinal); + public virtual void SetBoolean(int ordinal, bool value); + public virtual void SetByte(int ordinal, byte value); + public virtual void SetBytes(int ordinal, long fieldOffset, byte[] buffer, int bufferOffset, int length); + public virtual void SetChar(int ordinal, char value); + public virtual void SetChars(int ordinal, long fieldOffset, char[] buffer, int bufferOffset, int length); + public virtual void SetDateTime(int ordinal, DateTime value); + public virtual void SetDateTimeOffset(int ordinal, DateTimeOffset value); + public virtual void SetDBNull(int ordinal); + public virtual void SetDecimal(int ordinal, Decimal value); + public virtual void SetDouble(int ordinal, double value); + public virtual void SetFloat(int ordinal, float value); + public virtual void SetGuid(int ordinal, Guid value); + public virtual void SetInt16(int ordinal, short value); + public virtual void SetInt32(int ordinal, int value); + public virtual void SetInt64(int ordinal, long value); + public virtual void SetSqlBinary(int ordinal, SqlBinary value); + public virtual void SetSqlBoolean(int ordinal, SqlBoolean value); + public virtual void SetSqlByte(int ordinal, SqlByte value); + public virtual void SetSqlBytes(int ordinal, SqlBytes value); + public virtual void SetSqlChars(int ordinal, SqlChars value); + public virtual void SetSqlDateTime(int ordinal, SqlDateTime value); + public virtual void SetSqlDecimal(int ordinal, SqlDecimal value); + public virtual void SetSqlDouble(int ordinal, SqlDouble value); + public virtual void SetSqlGuid(int ordinal, SqlGuid value); + public virtual void SetSqlInt16(int ordinal, SqlInt16 value); + public virtual void SetSqlInt32(int ordinal, SqlInt32 value); + public virtual void SetSqlInt64(int ordinal, SqlInt64 value); + public virtual void SetSqlMoney(int ordinal, SqlMoney value); + public virtual void SetSqlSingle(int ordinal, SqlSingle value); + public virtual void SetSqlString(int ordinal, SqlString value); + public virtual void SetSqlXml(int ordinal, SqlXml value); + public virtual void SetString(int ordinal, string value); + public virtual void SetTimeSpan(int ordinal, TimeSpan value); + public virtual void SetValue(int ordinal, object value); + public virtual int SetValues(params object[] values); + } + public sealed class SqlMetaData { + public SqlMetaData(string name, SqlDbType dbType); + public SqlMetaData(string name, SqlDbType dbType, bool useServerDefault, bool isUniqueKey, SortOrder columnSortOrder, int sortOrdinal); + public SqlMetaData(string name, SqlDbType dbType, byte precision, byte scale); + public SqlMetaData(string name, SqlDbType dbType, byte precision, byte scale, bool useServerDefault, bool isUniqueKey, SortOrder columnSortOrder, int sortOrdinal); + public SqlMetaData(string name, SqlDbType dbType, long maxLength); + public SqlMetaData(string name, SqlDbType dbType, long maxLength, bool useServerDefault, bool isUniqueKey, SortOrder columnSortOrder, int sortOrdinal); + public SqlMetaData(string name, SqlDbType dbType, long maxLength, byte precision, byte scale, long locale, SqlCompareOptions compareOptions, Type userDefinedType); + public SqlMetaData(string name, SqlDbType dbType, long maxLength, byte precision, byte scale, long localeId, SqlCompareOptions compareOptions, Type userDefinedType, bool useServerDefault, bool isUniqueKey, SortOrder columnSortOrder, int sortOrdinal); + public SqlMetaData(string name, SqlDbType dbType, long maxLength, long locale, SqlCompareOptions compareOptions); + public SqlMetaData(string name, SqlDbType dbType, long maxLength, long locale, SqlCompareOptions compareOptions, bool useServerDefault, bool isUniqueKey, SortOrder columnSortOrder, int sortOrdinal); + public SqlMetaData(string name, SqlDbType dbType, string database, string owningSchema, string objectName); + public SqlMetaData(string name, SqlDbType dbType, string database, string owningSchema, string objectName, bool useServerDefault, bool isUniqueKey, SortOrder columnSortOrder, int sortOrdinal); + public SqlCompareOptions CompareOptions { get; } + public bool IsUniqueKey { get; } + public long LocaleId { get; } + public static long Max { get; } + public long MaxLength { get; } + public string Name { get; } + public byte Precision { get; } + public byte Scale { get; } + public SortOrder SortOrder { get; } + public int SortOrdinal { get; } + public SqlDbType SqlDbType { get; } + public string TypeName { get; } + public bool UseServerDefault { get; } + public string XmlSchemaCollectionDatabase { get; } + public string XmlSchemaCollectionName { get; } + public string XmlSchemaCollectionOwningSchema { get; } + public bool Adjust(bool value); + public byte Adjust(byte value); + public byte[] Adjust(byte[] value); + public char Adjust(char value); + public char[] Adjust(char[] value); + public SqlBinary Adjust(SqlBinary value); + public SqlBoolean Adjust(SqlBoolean value); + public SqlByte Adjust(SqlByte value); + public SqlBytes Adjust(SqlBytes value); + public SqlChars Adjust(SqlChars value); + public SqlDateTime Adjust(SqlDateTime value); + public SqlDecimal Adjust(SqlDecimal value); + public SqlDouble Adjust(SqlDouble value); + public SqlGuid Adjust(SqlGuid value); + public SqlInt16 Adjust(SqlInt16 value); + public SqlInt32 Adjust(SqlInt32 value); + public SqlInt64 Adjust(SqlInt64 value); + public SqlMoney Adjust(SqlMoney value); + public SqlSingle Adjust(SqlSingle value); + public SqlString Adjust(SqlString value); + public SqlXml Adjust(SqlXml value); + public DateTime Adjust(DateTime value); + public DateTimeOffset Adjust(DateTimeOffset value); + public Decimal Adjust(Decimal value); + public double Adjust(double value); + public Guid Adjust(Guid value); + public short Adjust(short value); + public int Adjust(int value); + public long Adjust(long value); + public object Adjust(object value); + public float Adjust(float value); + public string Adjust(string value); + public TimeSpan Adjust(TimeSpan value); + public static SqlMetaData InferFromValue(object value, string name); + } +} ```