Поделиться через


SqlUserDefinedAggregateAttribute Класс

Определение

Показывает, что тип должен быть зарегистрирован как определяемая пользователем Агрегатная функция. Свойства этого атрибута отражают значения физических атрибутов, используемых при регистрации типа в SQL Server. Этот класс не наследуется.

public ref class SqlUserDefinedAggregateAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct, AllowMultiple=false, Inherited=false)]
public sealed class SqlUserDefinedAggregateAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct, AllowMultiple=false, Inherited=false)>]
type SqlUserDefinedAggregateAttribute = class
    inherit Attribute
Public NotInheritable Class SqlUserDefinedAggregateAttribute
Inherits Attribute
Наследование
SqlUserDefinedAggregateAttribute
Атрибуты

Примеры

В следующем примере показан SqlUserDefinedAggregateAttribute атрибут для определяемого пользователем агрегата. Статистическое выражение использует пользовательскую сериализацию, имеет максимальный размер 8000 байт при сериализации и инвариантно для значений NULL, дубликатов и порядка.

using Microsoft.SqlServer.Server;
using System.IO;
using System.Data.Sql;
using System.Data.SqlTypes;
using System.Text;

[Serializable]
[Microsoft.SqlServer.Server.SqlUserDefinedAggregate(
   Microsoft.SqlServer.Server.Format.UserDefined,
   IsInvariantToNulls = true,
   IsInvariantToDuplicates = false,
   IsInvariantToOrder = false,
   MaxByteSize = 8000)
        ]
public class Concatenate : Microsoft.SqlServer.Server.IBinarySerialize
{

    public void Read(BinaryReader r)
    {

    }

    public void Write(BinaryWriter w)
    {

    }
}

Комментарии

SQL Server создает определяемый пользователем агрегат, привязанный к определению класса с настраиваемым атрибутомSqlUserDefinedAggregateAttribute. Каждое пользовательское статистическое выражение должно иметь этот атрибут.

Дополнительные сведения об определяемых пользователем статистических выражениях и примерах см. в разделе ClR User-Defined в электронной документации по SQL Server 2005 г.

Конструкторы

SqlUserDefinedAggregateAttribute(Format)

Обязательный атрибут пользовательской агрегатной функции, показывающий, что данный тип является пользовательской статистической функцией, и задающий формат ее хранения.

Поля

MaxByteSizeValue

Максимальный размер в байтах, необходимый для сохранения состояния этого статистического экземпляра во время вычисления.

Свойства

Format

Формат сериализации в виде значения Format.

IsInvariantToDuplicates

Показывает, инвариантна ли Агрегатная функция относительно дубликатов.

IsInvariantToNulls

Показывает, инвариантна ли Агрегатная функция относительно значений null.

IsInvariantToOrder

Показывает, инвариантна ли Агрегатная функция относительно порядка.

IsNullIfEmpty

Показывает, возвращает ли Агрегатная функция null при отсутствии накопленных значений.

MaxByteSize

Максимальный размер экземпляра агрегатной функции в байтах.

Name

Имя агрегатной функции.

Применяется к