データベースの型指定された xml 列に格納されているメニュー xml からいくつかのノードを削除したいと考えています。
メニュー xml からのスニペット -
<menu xmlns="http://xxx" ..>
<menuItem name="Menu1">
<menuItem name="SubMenu1">
<role>role1</role>
<url target="webPage1.aspx" />
</menuItem>
</menuItem>
次の XML DML を使用<role>
して削除しようとしています -menuItem = "SubMenu1"
UPDATE [dbo].[MenuTest]
SET xmlMenu.modify('
declare namespace ns="http://xxx";
delete(/ns:menu/ns:menuItem[@name="Menu1"]/ns:menuItem[@name="SubMenu1"]/ns:role[1])
')
しかし、このエラーが発生します:
メッセージ 6965、レベル 16、状態 1、行 1
XML 検証: 無効なコンテンツ。予期される要素: http://xxx:role 要素 'http://xxx:url' が指定されました。
ここで欠けているものを教えてください。
ありがとうございました!