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

Откуда:
Сообщений: 388
Добрый день!

В таблице есть столбец "BrowserCapabilities", содержит примерно следующее:

<Items>
  <Item Key="minorversion" Value=".0" />
  <Item Key="jscriptversion" Value="5.6" />
  <Item Key="defaultScreenCharactersHeight" Value="40" />
  <Item Key="supportsImageSubmit" Value="true" />
  <Item Key="requiresHtmlAdaptiveErrorReporting" Value="false" />
  <Item Key="preferredImageMime" Value="image/gif" />
  <Item Key="supportsVCard" Value="true" />
  <Item Key="screenBitDepth" Value="32" />
  <Item Key="supportsFontSize" Value="true" />
  <Item Key="screenPixelsWidth" Value="" />
  <Item Key="requiresContentTypeMetaTag" Value="false" />
  <Item Key="w3cdomversion" Value="1.0" />
  <Item Key="gatewayVersion" Value="None" />
  <Item Key="requiresPostRedirectionHandling" Value="false" />
  <Item Key="inputType" Value="keyboard" />
  <Item Key="maximumSoftkeyLabelLength" Value="5" />
  <Item Key="version" Value="7.0" />
  <Item Key="beta" Value="false" />
  <Item Key="canRenderOneventAndPrevElementsTogether" Value="true" />
  <Item Key="supportsIModeSymbols" Value="false" />
  <Item Key="requiresAdaptiveErrorReporting" Value="false" />
</Items>

Мне нужно обновить все записи, и в столбце "BrowserCapabilities" изменить несколько значений, делаю так:

UPDATE dbo.tblSession SET 
BrowserCapabilities.modify('
  replace value of (/Items/Item[@Key="screenBitDepth"]/@Value)[1] with "16",
')

Всё нормально обновляется, а вот обновление нескольких значений сразу не работает:

UPDATE dbo.tblSession SET 
BrowserCapabilities.modify('
  replace value of (/Items/Item[@Key="screenBitDepth"]/@Value)[1] with "16",
'),

BrowserCapabilities.modify('
    replace value of (/Items/Item[@Key="beta"]/@Value)[1] with "True"
')

На синтаксис ругается ... В чём дело?
15 сен 09, 10:36    [7659145]     Ответить | Цитировать Сообщить модератору
 Re: Обновление XML  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
Круг допустимых по эффективности XML-задач узок. Советую разнести Key-Value в отдельную таблу или менять на стороне клиента (application server-е).
Реляционному XML нет места в сиквеле.
15 сен 09, 11:03    [7659369]     Ответить | Цитировать Сообщить модератору
 Re: Обновление XML  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

несколько update-ов пишите.
одним - если только целиком весь xml заменять, по-другому не получится, по-моему.

Posted via ActualForum NNTP Server 1.4

15 сен 09, 11:06    [7659397]     Ответить | Цитировать Сообщить модератору
 Re: Обновление XML  [new]
dVirt
Member

Откуда:
Сообщений: 388
Сделаю несколько UPDATE запросов в одном пакете, тогда ...
15 сен 09, 11:34    [7659651]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить