Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Топик располагается на нескольких страницах: ←Ctrl назад 1 [2] все |
Ролг Хупин Member Откуда: Чебаркуль Сообщений: 3970 |
Это из книжки специалиста, ранее из сПб, но я тоже повелся на 2014 два раза ![]() |
||||
16 фев 21, 16:18 [22281697] Ответить | Цитировать Сообщить модератору |
felix_ff Member Откуда: Moscow Сообщений: 1688 |
Ролг Хупин, Без переписи логики никуда не дется если у вас будут присутствовать явные транзакции и изначально БД спроектирована под пессеместическую модель параллелизма. начнете огребать ошибки 41302 да и вообще все нюансы самой модели даже при стандартном autocommit доступе должны быть учтены. |
16 фев 21, 17:07 [22281731] Ответить | Цитировать Сообщить модератору |
Ролг Хупин Member Откуда: Чебаркуль Сообщений: 3970 |
это да, без вопросов, переписывать надо. Вот, взял 3-4 таблицы, переделал, затем их триггеры, там какие-то прошли, какие-то под вопросом. Сейчас пытаюсь разобраться как быть с RI между Disk-based table->Memory-Optimized Table. Обычный Foreign Key не работает, может через обычный триггер прикрутить.... |
||||
16 фев 21, 17:33 [22281756] Ответить | Цитировать Сообщить модератору |
Ролг Хупин Member Откуда: Чебаркуль Сообщений: 3970 |
Как объявить функцию, возвращающую @out table, чтобы она возвращала memory optimized type dbo.TypeOUT?DROP FUNCTION [dbo].[test01] GO CREATE FUNCTION [dbo].[test01] (@id int) RETURNS @out table (pid int,pname nvarchar(128)) AS BEGIN insert into @out(pid, pname) values(101, N'dobedo') return; END CREATE TYPE dbo.TypeOUT AS TABLE ( id int null, name nvarchar(128) null, RID INT NOT NULL IDENTITY, INDEX ix_RID HASH (RID) WITH (BUCKET_COUNT=1024) ) WITH (MEMORY_OPTIMIZED = ON); GO select * from dbo.test01(1) |
18 фев 21, 17:04 [22282982] Ответить | Цитировать Сообщить модератору |
felix_ff Member Откуда: Moscow Сообщений: 1688 |
declare @t [dbo].[TypeOUT]; insert into @t select * from [dbo].[test01](10); select * from @t; если вы хотите что бы у вас функция сразу возвращала тип [dbo].[TypeOUT] - то хрен. такое не возможно. |
||||
18 фев 21, 19:37 [22283070] Ответить | Цитировать Сообщить модератору |
Ролг Хупин Member Откуда: Чебаркуль Сообщений: 3970 |
Вот-вот, хрен - это тоже ответ ![]() Я хотел заменить функцию инсертящую в @ таблицу и возвращающую её на функцию, которая бы инсертила в MO таблицу и возвращала её, т.е. добиться улучшения производительности. |
||||||||
19 фев 21, 12:03 [22283363] Ответить | Цитировать Сообщить модератору |
Топик располагается на нескольких страницах: ←Ctrl назад 1 [2] все |
Все форумы / Microsoft SQL Server | ![]() |