0

XML ベースのデータベースを使用して、大規模なデータのレコードを Web アプリケーションに保存しています。PHP で XML タグを使用してすべてのデータまたは特定のデータを取得する方法を知っています。しかし、PHP を使用して XML タグに格納されたデータを更新する方法がわかりません。たとえば、PHP から XQuery を使用して、次の XML タグを更新したいと考えています。

<program id="p00547jm">
    <time>
        <startTime>1003394820</startTime>
        <endTime>1003394826</endTime>
        <epochStart>2001-10-18T08:47:00</epochStart>
        <epochEnd>2001-10-25T08:47:00</epochEnd>
    </time>
    <completeTitle>in_our_time:_democracy</completeTitle>
    <mediaType>audio</mediaType>

次の XQuery を使用して、1 つの特定の XML タグの値を更新しています。

$query='for $x in doc("coursework")/bbcPrograms/program 
 where $x/completeTitle="'.$single_edit_program_title_hidden.'" 
 and $x/mediaType="'.$single_edit_program_type_hidden.'" and 
 $x/masterBrand="'.$single_edit_masterbrand_hidden.'" and 
 $x/service="'.$single_edit_service_hidden.'"  

 return update value $x/completeTitle[.="'.$single_edit_program_title_hidden.'"] with "'.$single_edit_program_title.'"';

1 つの特定の XML タグ値を更新する場合、正しく機能します。次に、この XQuery を機能させて、複数の XML タグのタグ値を更新したいと考えています。SQL で通常行うのと同じように。SET id='abc' AND name = 'xyz'...

この Xquery が複数のタグ値の更新に対してどのように機能するかを教えてください。

4

0 に答える 0