Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
BusyMan Member Откуда: Москва Сообщений: 4927 |
Я хочу чтобы у меня можно было в колонке записать "7016207,7016208,7016209,7016210,7016211,7016212". Единственный способ это сделать без XML известный мне - это сделать user defined table type:DROP TYPE StepIds CREATE TYPE dbo.StepIds AS TABLE ( iWorkflowId INT NOT NULL PRIMARY KEY NONCLUSTERED ) WITH (MEMORY_OPTIMIZED = ON ) но он не вставляется в табличкку при MEMORY_OPTIMIZED CREATE TABLE [dbo].[ProcessTable] ( [iProcessID] [int] NOT NULL, tStepIds StepIds CONSTRAINT [PK_Workflow] PRIMARY KEY NONCLUSTERED (iWorkflowProcessID ASC) )WITH ( MEMORY_OPTIMIZED = ON , DURABILITY = SCHEMA_AND_DATA ) Msg 350, Level 16, State 1, Line 18 The column "tStepIds" does not have a valid data type. A column cannot be of a user-defined table type. Может я что то даже не в ту сторону думаю, если кто подскажет как этого же достичь может и подругому - благодарю заранее. Вопрос теоретический, поэтому прошу не предлагать мне делать Parent->Child табличку.
|
||
11 фев 14, 01:02 [15549016] Ответить | Цитировать Сообщить модератору |
Crimzic Member Откуда: Sydney Сообщений: 59 |
В качестве полей Memory optimized table можно использовать только простые типы SQL Server: http://msdn.microsoft.com/en-us/library/dn133179(v=sql.120).aspx. XML, кстати, тоже нельзя. В таком случае, вам остаётся comma delimited string (nvarchar(n)), но нужно также учесть ограничение на максимальную длину строки в таблице 8060 байт. |
11 фев 14, 03:51 [15549104] Ответить | Цитировать Сообщить модератору |
Mnior Member Откуда: Кишинёв Сообщений: 6723 |
![]() Relation DataBases |
||||||
11 фев 14, 04:05 [15549106] Ответить | Цитировать Сообщить модератору |
BusyMan Member Откуда: Москва Сообщений: 4927 |
Спасибо.. там вон рядышком аж целый сборник таких глупых вопросов )) Migrating to In-Memory OLTP Хотя, мне все же не очевидно что будет быстрее - делать Split("1,2,3,7,11") или лазить в in-memory табличку махонькую.. Вот чесное(98%) слово, не поленюсь и померию что быстрее (в предположении что в таблице 300К строк по 200Б а чисел через запятую - пара/пяток). |
||
11 фев 14, 04:33 [15549115] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |