Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Создание детерминированной пользовательской функции для использования в вычисляемом столб  [new]
Vlad__i__mir
Member

Откуда:
Сообщений: 188
Здравствуйте!

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

Как это можно исправить?

CREATE FUNCTION [dbo].[KoordsAreaInText] (@koords geography, @radius_action int)
 RETURNS nvarchar(max)
 AS
 BEGIN
 DECLARE @area geography;
 DECLARE @areaText nvarchar(max);
 SET @area=@koords.STBuffer(@radius_action);
 SET @areaText=@area.STAsText();
 RETURN(@areaText);
 END
 GO

CREATE TABLE GeographicalKoordinates (
	Id_GeographicalKoordinates int NOT NULL IDENTITY (1,1) PRIMARY KEY,
	Koordinate geography NOT NULL,
	TypeKoordinates NVARCHAR(50) NULL CHECK (TypeKoordinates IN ('POINT','LINESTRING','POLYGON','Other')),
	SRID INT NULL,
	RadiusAction INT NULL,
	HeighSeaLevel decimal(18,6) NULL,
	AllKoordinatesArea AS Koordinate.STBuffer(RadiusAction) PERSISTED,
	KoordinateText AS Koordinate.STAsText() PERSISTED,
	AllKoordinatesAreaTxt AS dbo.KoordsAreaInText(Koordinate,RadiusAction) PERSISTED,
	description nvarchar(50) NULL);
	GO
13 фев 19, 19:35    [21808892]     Ответить | Цитировать Сообщить модератору
 Re: Создание детерминированной пользовательской функции для использования в вычисляемом столб  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Vlad__i__mir,

Читать что для этого надо... Для начала with schemabinding
13 фев 19, 19:52    [21808901]     Ответить | Цитировать Сообщить модератору
 Re: Создание детерминированной пользовательской функции для использования в вычисляемом столб  [new]
Vlad__i__mir
Member

Откуда:
Сообщений: 188
TaPaK, замечание наверное верное, но в решении вопроса не помогло
13 фев 19, 19:57    [21808904]     Ответить | Цитировать Сообщить модератору
 Re: Создание детерминированной пользовательской функции для использования в вычисляемом столб  [new]
_human
Member

Откуда:
Сообщений: 556
Vlad__i__mir,

Vlad__i__mir
но в решении вопроса не помогло

with schemabinding помогает
13 фев 19, 20:56    [21808944]     Ответить | Цитировать Сообщить модератору
 Re: Создание детерминированной пользовательской функции для использования в вычисляемом столб  [new]
Vlad__i__mir
Member

Откуда:
Сообщений: 188
TaPaK, спасибо!
14 фев 19, 20:14    [21809941]     Ответить | Цитировать Сообщить модератору
 Re: Создание детерминированной пользовательской функции для использования в вычисляемом столб  [new]
Vlad__i__mir
Member

Откуда:
Сообщений: 188
_human, спасибо, до меня не сразу дошло)
14 фев 19, 20:15    [21809942]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить