Реферат: MS SQL Server 9 Yukon. Интеграция с .NET
SystemDataAccess = SystemDataAccessKind.None,
IsDeterministic = true,
IsPrecise = true)]
public static SqlString RevertString(SqlString str)
{
if (str.IsNull)
return SqlString.Null;
System.Text.StringBuilder sb = new
System.Text.StringBuilder(str.Value.Length);
for (int i=str.Value.Length-1; i>=0; i--)
sb.Append(str.Value[i]);
return new SqlString(sb.ToString());
}
Поскольку реализация самой функции примитивна, остановимся на том, что ее окружает.
Во-первых, к методу применен атрибут SqlFunc. Как и SqlProcedure, он позволяет указать средствам автоматического развертывания информацию, необходимую для правильного построения команды CREATE FUNCTION. В данном случае никаких параметров не использовано – атрибут просто указывает, что данный метод надо будет зарегистрировать как функцию. Более подробно мы рассмотрим возможности этого атрибута чуть позже.
А вот следующий атрибут – SQLFunction – уже используется «внутри» MS SQL Server для определения того, как можно эту функцию использовать. В таблице 3 приведено описание параметров этого атрибута:
Имя параметра |
Описание |
DataAccess |
Какой доступ осуществляет функция к пользовательским данным в базе:DataAccessKind.None – никакого.DataAccessKind.Read – читает данные. |
SystemDataAccess |
Какой доступ осуществляет функция к системным данным в базе:SystemDataAccessKind.None – никакого.SystemDataAccessKind.Read – читает данные. |
IsDeterministic |
Является ли функция детерминистической, т.е. зависит ли ее возвращаемое значение только от переданных параметров. |
IsPrecise |
Выполняет ли функция округления в процессе работы. |
Таблица 3.
В нашем случае ни к каким данным доступа не происходит, возвращаемое значение зависит только от переданного параметра, и значение является точным, а не приближенным.
ПРИМЕЧАНИЕ К-во Просмотров: 468
Бесплатно скачать Реферат: MS SQL Server 9 Yukon. Интеграция с .NET
|